gpt4 book ai didi

android - 如何在控件到达某个位置时禁用 ViewPager 中的左滑动

转载 作者:行者123 更新时间:2023-11-29 14:14:55 25 4
gpt4 key购买 nike

我正在使用一个 ViewPager,它有两个页面并且正在被重用。我的总页数是 156 页。我想禁用第 2 页的左滑动。请帮帮我,谢谢,

这是我的代码..

public class SlidePagerActivity extends FragmentActivity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mPager = (ViewPager) findViewById(R.id.pager);
mPager.setOnPageChangeListener(new ViewPageChangeListener(){
// set current slide index
AbcController.getInstance().getSlideController().setCurrentSlide(_nNextSlideIndex);
// set Current Cycle Index
AbcController.getInstance().getSlideController().setCurrentCycle(_nNextSlideCycle);

// set pager index
_mPager_in.setCurrentItem(_nNextSlideIndex);
});
}
}

最佳答案

我想阻止用户滑动返回上一页,但又不希望页面不消失(允许他在满足某些条件时滑动返回)。

我终于使用了 OnPageChangeListener:

viewPager.addOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}

@Override
public void onPageSelected(int position) {
if(position < pageActuelle) {
viewPager.setCurrentItem( pageActuelle );
return;
}

pageActuelle = position;
}

@Override
public void onPageScrollStateChanged(int state) {

}
});
}

现在我强制用户在向左滑动时返回到他的当前页面。这个解决方案非常适合我的问题,因为我可以在用户尝试向后滑动时显示 Toast。

希望对大家有帮助。

关于android - 如何在控件到达某个位置时禁用 ViewPager 中的左滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23387812/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com