可以通过以下步骤实现:
以下是一个示例代码:
ViewPager viewPager = findViewById(R.id.viewPager);
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
// 判断当前页面是否为最后一页
if (position == viewPager.getAdapter().getCount() - 1) {
// 禁止ViewPager的滚动
setPagingEnabled(viewPager, false);
} else {
// 允许ViewPager的滚动
setPagingEnabled(viewPager, true);
}
}
@Override
public void onPageSelected(int position) {
}
@Override
public void onPageScrollStateChanged(int state) {
}
});
private void setPagingEnabled(ViewPager viewPager, boolean enabled) {
// 通过反射设置ViewPager的mIsPagingEnabled字段
try {
Field field = ViewPager.class.getDeclaredField("mIsPagingEnabled");
field.setAccessible(true);
field.set(viewPager, enabled);
} catch (Exception e) {
e.printStackTrace();
}
}
这样,当ViewPager滚动到最后一页时,就会停止滚动,以便查看最后一页的内容。
领取专属 10元无门槛券
手把手带您无忧上云