У меня в MainActivity есть просмотрщик, который добавляет 10 фрагментов в свой адаптер.Я создаю модуль кинжала, который предоставляет адаптер ViewPager синглетного типа.
@Module
class FragmentModule(val fm : FragmentManager) {
@Provides
@Singleton
fun getViewPagerAdapter() : MainViewPagerAdapter {
val adapter = MainViewPagerAdapter(fm)
val categoryList : ArrayList<CategoryModel> = MyDataBase.getCategoryList()
for (item in categoryList ) {
val fragment = MainFragment()
val bundle = Bundle()
bundle.putParcelable(Options.bundle_catModel, item)
fragment.arguments = bundle
adapter.addFragment(fragment, item.name)
}
return adapter
}
}
и внедряю этот адаптер в MainActivity:
class MainActivity : BaseActivity(), MainView {
.
.
.
@Singleton
@Inject
lateinit var fragmentsAdapter: MainViewPagerAdapter
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
App.getComponent(supportFragmentManager).inject(this) //pass supportFragmentManager to FragmentModule as parameter
viewpager.apply {
this.adapter = fragmentsAdapter
tabLayout.setupWithViewPager(this)
}
.
.
.
}
Когда я воссоздаю действие, чтобы изменить тему, мой просмотрщик не показывает фрагменты,Я проверил, что мои фрагменты создаются, видимость моего viewPager видна, а высота viewPager не равна 0. Но это не будет отображаться!Кто-нибудь знает, где проблема?