博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
自定义ViewPager,避免左右滑动时与水平滑动控件冲突
阅读量:6288 次
发布时间:2019-06-22

本文共 1577 字,大约阅读时间需要 5 分钟。

import android.content.Context; import android.support.v4.view.ViewPager; import android.util.AttributeSet; import android.view.MotionEvent; import android.view.View;
public class CanScrollViewPager extends ViewPager {
private boolean mNoScroll = false;//标记不允许左右滚动 /** * @param context * @param attrs */ public CanScrollViewPager(Context context, AttributeSet attrs) {
super(context, attrs); } /** * @param context */ public CanScrollViewPager(Context context) {
super(context); } @Override protected boolean canScroll(View v, boolean checkV, int dx, int x, int y) {
if (v != this && (v instanceof PageWebView || v instanceof HorizontalGalleryView)) {
requestDisallowInterceptTouchEvent(true); return true; } return super.canScroll(v, checkV, dx, x, y); } @Override public boolean dispatchTouchEvent(MotionEvent ev) {
switch (ev.getAction()) {
case MotionEvent.ACTION_UP: case MotionEvent.ACTION_CANCEL: break; default: break; } return super.dispatchTouchEvent(ev); } //设置不允许左右滚动 public void setNoScroll(boolean noScroll) {
this.mNoScroll = noScroll; } @Override public boolean onTouchEvent(MotionEvent arg0) {
if (mNoScroll) {
return false; } return super.onTouchEvent(arg0); } @Override public boolean onInterceptTouchEvent(MotionEvent arg0) {
if (mNoScroll) {
return false; } return super.onInterceptTouchEvent(arg0); } }

转载于:https://www.cnblogs.com/agilezhu/p/5881176.html

你可能感兴趣的文章
angularjs入门(一)
查看>>
环境变量PATH、cp命令、mv命令、cat命令、tac命令、more、less、head、tail
查看>>
bandit系列0--10
查看>>
文本过滤之grep,egreo及fgrep 三剑客及正则表达式
查看>>
实现Singleton模式在C#
查看>>
服务发现:Zookeeper vs etcd vs Consul
查看>>
微软企业项目管理系统技术研讨会
查看>>
Kafka设计篇之消息传输的事务定义
查看>>
我的友情链接
查看>>
使用windows 7 系统安装盘 DOS普通用户提权为管理员
查看>>
老男孩教育每日一题第115天:如何在centos 6下面实现命令补全?效果如下
查看>>
国内可用的yum源
查看>>
linux df -h 命令卡住 解决方法
查看>>
spring是什么,Spring能帮我们做什么
查看>>
Codeforces 861D - Polycarp's phone book
查看>>
FreePortScanner.java
查看>>
HttpURLConnection 文件上传限制
查看>>
javascript类式继承新的尝试
查看>>
真正掌握vuex的使用方法(四)
查看>>
MySql的Communications link failure解决办法
查看>>