软件编程
位置:首页>> 软件编程>> Android编程>> Android之禁止ViewPager滑动实现实例

Android之禁止ViewPager滑动实现实例

作者:Lindroy  发布时间:2022-03-17 23:55:40 

标签:Android,ViewPager

Android之禁止ViewPager滑动实现实例

当我们想在同一个Activity或者Fragment中展示多个页面时往往会用到ViewPager,通过滑动,我们可以很方便地在不同的页面中切换。但是在某些情况下我们可能并不需要通过滑动来切换ViewPager中的页面(比如为了避免跟页面内的某些触摸事件冲突),而是希望只点击下面或者上面的按钮来切换页面。像知乎那样:

Android之禁止ViewPager滑动实现实例

那么有什么方法可以实现不滑动ViewPager呢?其实很简单,只需要自定义一个不滑动的ViewPager就可以了。ViewPager之所以会随着手势滑动,是因为它使用了onTouchEvent监听事件(查看源码就可以知道)。那我们可以反其道而行之,改动它的onTouchEvent方法就可以了。

使用自定义控件的写法,创建一个MyViewPager类,继承于ViewPager,由于我们并不需要触摸监听事件,所以重写ViewPager中的onTouchEvent方法,返回一个true即可。


public class MyViewPager extends ViewPager {

public MyViewPager(Context context) {
   super(context);
 }

public MyViewPager(Context context, AttributeSet attrs) {
   super(context, attrs);
 }

@Override
 public boolean onTouchEvent(MotionEvent ev) {
   return true;
 }
}

然后,只需要使用我们自定义好的ViewPager即可。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

来源:http://blog.csdn.net/lindroid20/article/details/52425626

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com