前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android viewpage实现可控制的禁止滑动

Android viewpage实现可控制的禁止滑动

作者头像
砸漏
发布2020-10-28 12:45:05
1.7K0
发布2020-10-28 12:45:05
举报
文章被收录于专栏:恩蓝脚本

Android编程常常使用ViewPager结合Fragment实现可以左右滑动切换的页面,但有时会遇到这样的需求,让ViewPager根据特定条件来控制其是否滑动。

实现思路:重写ViewPager,覆盖 onTouchEvent 和 onInterceptTouchEvent 方法,使其返回false,截取ViewPager的事件响应,这样就等于禁止了ViewPager上的滑动事件。

代码语言:javascript
复制
public class MyViewPager extends ViewPager { 

  private boolean scrollble=true; 

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

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


  @Override 
  public boolean onTouchEvent(MotionEvent ev) { 
    if (!scrollble) { 
      return true; 
    } 
    return super.onTouchEvent(ev); 
  }

  @Override
  public boolean onInterceptTouchEvent(MotionEvent ev) {
    if (scrollble == false) {
      return false;
    } else {
      return super.onInterceptTouchEvent(ev);
    }
  }

  public boolean isScrollble() { 
    return scrollble; 
  } 

  public void setScrollble(boolean scrollble) { 
    this.scrollble = scrollble; 
  } 
} 

在java代码中初始化MyViewPager后,调用setScrollble( )方法,则可控制ViewPager是否滑动,false为不可滑动,true为可滑动。

以上就是本文的全部内容,希望对大家的学习有所帮助。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档