如何禁止viewPage左右滑动的效果

 我来答
乐观的非陈勿扰
2016-11-08 · 超过30用户采纳过TA的回答
知道答主
回答量:54
采纳率:0%
帮助的人:12.2万
展开全部
在使用viewPager+Fragment时候,能够实现类似微信左右切换的效果,但是有时候根据App的需要,不需要左右滑动的效果,例如QQ,此时需要禁止左右滑动的效果。

在layout文件中,定义了一个viewPager,在Java代码中:
取消左右滑动关键代码:添加setOnTouchListener方法,如下
[java] view plain copy
private ViewPager mViewPage;
......
mViewPage.setOnTouchListener(new OnTouchListener() {

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
return true;
}
});
其中onTouch()方法恒返回true,便可以禁止左右滑动的效果。因为返回值是boolean类型,如果他的返回值是true,那么说明本次触摸事件被消费掉了,会传进来一个新的触摸事件。如果是false,那么说明没有被消费掉,就不会换入一个新的事件。只要返回值改成true,就都不会执行触摸事件了

此时,在界面上,无法通过左右切换来显示不同的Fragment。此时实现Fragment可以使用按钮Button来实现,或者通过其他途径来显示不同的Fragment。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式