ViewPager2 - 如何使用 registerOnPageChangeCallback 检查视图寻呼机项目位置
ViewPager2 - How to use registerOnPageChangeCallback to check view pager item position
如何使用 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)
}
})
使用传递的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)
}
})
不要忘记在 onDestroy
中注销您的回调以避免可能的内存泄漏。
override fun onDestroy() {
super.onDestroy()
mViewPager.unregisterOnPageChangeCallback(this)
}
如何使用 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)
}
})
使用传递的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)
}
})
不要忘记在 onDestroy
中注销您的回调以避免可能的内存泄漏。
override fun onDestroy() {
super.onDestroy()
mViewPager.unregisterOnPageChangeCallback(this)
}