Во-первых, я создал 2 фрагмента и его работу хорошо, но когда я добавил фрагмент (всего 3 фрагмента) в первый раз создал свою работу, но после считывания swipeRefresh или изменения tab / pager первый фрагмент и третий фрагмент не работает (новид это шоу) но второй фрагмент работает хорошо.это мой фрагментный адаптер
class FragmentAdapter(fragmentManager: FragmentManager) : FragmentPagerAdapter(fragmentManager) {
val mFragmentList: ArrayList<Fragment> = ArrayList()
private val mFragmentTitleList: MutableList<String> = mutableListOf()
override fun getItem(position: Int): Fragment {
return mFragmentList[position]
}
override fun getCount(): Int {
return mFragmentList.count()
}
fun addFragment(fragment: Fragment, title: String = "") {
mFragmentList.add(fragment)
mFragmentTitleList.add(title)
}
override fun getPageTitle(position: Int): CharSequence {
return mFragmentTitleList[position]
}
и это мой фрагмент
class MainFragment : Fragment() {
private val tabFrag by lazy { tab_frag }
private val pagerFrag by lazy { pager_frag }
private lateinit var pagerAdapter: FragmentAdapter
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.fragment_main, container, false)
}
override fun onViewCreated(view: View?, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
pagerAdapter = FragmentAdapter(childFragmentManager)
pagerAdapter.addFragment(FirstFragment(), "First")
pagerAdapter.addFragment(ScndFragment(), "Second")
pagerAdapter.addFragment(ThirdFragment(), "Third")
pagerFrag.adapter = pagerAdapter
tabFrag.setupWithViewPager(pagerFrag)
tabFrag.setOnTabSelectedListener(OnTabCustomSelectedListener(context, tabFrag))
val tabCount = tabFrag.tabCount
for (i in 0 until tabCount) {
val tab = tabFrag.getTabAt(i)
if (tab != null) {
val tabTextView = LayoutInflater.from(context).inflate(R.layout.item_tab_text, tabFrag, false) as TextView
tabTextView.text = tab!!.text
tabTextView.setTextAppearance(context,
if (i == 0) {
R.style.TextAppearance_Tabs_Selected
} else {
R.style.TextAppearance_Tabs
})
tab.customView = tabTextView
}
}
}