怎么禁止viewpage向右滑动
答案:2 悬赏:40 手机版
解决时间 2021-02-10 23:48
- 提问者网友:最美的风景
- 2021-02-10 19:07
怎么禁止viewpage向右滑动 只能往左滑动请各位大神帮忙
最佳答案
- 五星知识达人网友:思契十里
- 2021-02-10 19:26
重写ViewPager的onTouch、onInterceptTouchEvent 判断滑动方向~然后修改返回值就行~
全部回答
- 1楼网友:行路难
- 2021-02-10 20:25
在使用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。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯