首页 > 解决方案 > ViewPager2 - 如何使用 registerOnPageChangeCallback 检查查看寻呼机项目位置

问题描述

如何使用 ViewPager2 的registerOnPageChangeCallback工具来检查当前可见 ViewPAger2 片段的位置?我知道这将由if/when语句组成,但不知道实现这一点的正确方法。

mViewPager.registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() {
            override fun onPageSelected(position: Int) {
                if (mViewPager.currentPage) == 0 {
                // do something
                }
                else if (mViewPager.currentPage) == 1 {
                // do something
                }
                else {
                // do something
                }
                super.onPageSelected(position)
            }
        })

标签: androidkotlinandroid-viewpagerandroid-viewpager2

解决方案


使用传递position来知道你在哪里:

 mViewPager.registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() {
            override fun onPageSelected(position: Int) {
                if (position == 0) {
                // you are on the first page
                }
                else if (position == 1) {
                // you are on the second page
                }
                else if (position == 2){
                // you are on the third page
                }
                super.onPageSelected(position)
            }
        })

推荐阅读