Android之禁止ViewPager滑动实现实例
作者:Lindroy 时间:2022-03-17 23:55:40
Android之禁止ViewPager滑动实现实例
当我们想在同一个Activity或者Fragment中展示多个页面时往往会用到ViewPager,通过滑动,我们可以很方便地在不同的页面中切换。但是在某些情况下我们可能并不需要通过滑动来切换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
标签:Android,ViewPager
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
SpringBoot2.0集成WebSocket实现后台向前端推送信息
2023-08-22 18:50:39
![](https://img.aspxhome.com/file/2023/8/58308_0s.png)
springboot+mybatis-plus 两种方式打印sql语句的方法
2022-12-29 13:41:11
![](https://img.aspxhome.com/file/2023/9/64379_0s.jpg)
java之swing下拉菜单实现方法
2023-07-12 04:55:30
java 中如何实现 List 集合去重
2023-10-07 07:54:06
![](https://img.aspxhome.com/file/2023/9/58549_0s.webp)
Java中mybatis的三种分页方式
2021-06-25 11:14:05
![](https://img.aspxhome.com/file/2023/7/67607_0s.png)
Spring Data Jpa框架最佳实践示例
2021-11-25 00:43:01
Spring Security基于json登录实现过程详解
2023-12-07 07:15:18
![](https://img.aspxhome.com/file/2023/4/72354_0s.png)
JAVA集合框架Map特性及实例解析
2021-06-05 02:23:39
java 实现迷宫回溯算法示例详解
2023-12-14 23:52:26
![](https://img.aspxhome.com/file/2023/2/62982_0s.png)
全面解析Hibernate关联操作、查询操作、高级特性、并发处理机制
2021-06-25 08:48:48
SpringMVC+EasyUI实现页面左侧导航菜单功能
2022-09-30 17:11:01
![](https://img.aspxhome.com/file/2023/6/84766_0s.png)
JAVA中Comparable接口和自定义比较器示例讲解
2023-11-20 22:16:32
RocketMQ之NameServer架构设计及启动关闭流程源码分析
2021-07-30 20:43:56
![](https://img.aspxhome.com/file/2023/7/80937_0s.jpg)
Logger.error打印错误异常的详细堆栈信息
2022-01-06 23:03:04
![](https://img.aspxhome.com/file/2023/3/73033_0s.jpg)
Java 开启多线程常见的4种方法
2023-11-23 02:30:10
![](https://img.aspxhome.com/file/2023/0/58580_0s.png)
Java实现配置加载机制
2023-11-26 09:03:38
java struts2学习笔记之线程安全
2022-08-07 00:13:07
Mybatis实现增删改查(CRUD)实例代码
2022-10-05 20:03:22
Spring5路径匹配器PathPattern解析
2021-07-09 00:12:28
Mybatis-Plus分页的使用与注意事项
2022-08-14 22:00:56
![](https://img.aspxhome.com/file/2023/8/82378_0s.png)