안드로이드 앱 뷰페이저 갱신

조회수 687회

안녕하세요~~ 의존할 곳이 여기밖에 없네요..ㅎㅎ

프래그먼트 뷰플리퍼 갱신에 관한 질문입니다.


class SearchViewPagerAdapter(var fragNum : Int, fm : FragmentManager, searchText : String) : FragmentStatePagerAdapter(fm) {

    val firstFrag : Fragment = SearchTagsFragment(searchText)
    val secondFrag : Fragment = SearchAccountsFragment(searchText)


    // position 별로 어느 Fragment로 이동할지 결정
    override fun getItem(position: Int): Fragment? {
        return when (position) {
            0 -> firstFrag
            1 -> secondFrag
            else -> null
        }
    }

    // 몇 개의 Fragment인지 결정
    override fun getCount(): Int = fragNum

위의 코드가 viewpager adapter.kt 입니다.

문제는, 두 번째 프래그먼트(SearchAccountFragment)에서 TextWatcher로 검색기능을 수행할 때 첫 번째 프래그먼트로 이동하고, 검색 결과를 확인하려면 다시 페이지를 옆으로 넘겨야 하는 상황입니다.

프래그먼트 갱신 관련해서 검색을 해보니 아래 코드를 MainActivity에 넣으라고 하더군요..

    fun refresh(){
        SearchViewPagerAdapter.notifyDataSetChanged()
    }

그런데 아무리 viewpager adapter 에 이것저것 (companion object, interface . . .. ) 넣어봐도 notifyDataSetChanged()에 빨간줄이 계속 뜹니다..

이걸 어떻게 해결할까요?

앱개발한지 얼마되지 않아 부족한 점이 많습니다 ㅜㅜ 고수분들의 답변 부탁드립니다.

감사합니다!

  • (•́ ✖ •̀)
    알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)