首页 > 解决方案 > viewpager2 的视图绑定错误

问题描述

我使用视图绑定。当我将它与 viewpager2 一起使用时,我看不到有关 viewpager2 的任何信息。不使用视图绑定时,我可以很好地看到 viewpager2。有什么办法可以解决吗?工作代码的结果很好,但不工作的代码不会显示任何没有错误的东西。

在职的

class UserActivity3 :AppCompatActivity(){

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)  
        setContentView(R.layout.activity_user3)

        renderViewPager()
        renderTabLayer()

    }

    private fun renderTabLayer() {
        TabLayoutMediator(tabs, viewpager2) { tab, position ->
            tab.text = getString(ResourceStore.tabList[position])
        }.attach()
    }
    private fun renderViewPager() {
        viewpager2.adapter = object : FragmentStateAdapter(this) {

            override fun createFragment(position: Int): Fragment {
                return ResourceStore.pagerFragments[position]
            }

            override fun getItemCount(): Int {
                return ResourceStore.tabList.size
            }
        }
    }


}

不工作


class UserActivity3 :AppCompatActivity(){


    private lateinit var binding: ActivityUser3Binding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityUser3Binding.inflate(layoutInflater);
        renderTabLayer()

    }

    private fun renderTabLayer() {
        TabLayoutMediator(binding.tabs, binding.viewpager2) { tab, position ->
            tab.text = getString(ResourceStore.tabList[position])
        }.attach()
    }
    private fun renderViewPager() {
        binding.viewpager2.adapter = object : FragmentStateAdapter(this) {

            override fun createFragment(position: Int): Fragment {
                return ResourceStore.pagerFragments[position]
            }

            override fun getItemCount(): Int {
                return ResourceStore.tabList.size
            }
        }
    }


}

标签: android

解决方案


Bro you're not calling the renderviewpager() method. its not the issue with binding.


推荐阅读