为了账号安全,请及时绑定邮箱和手机立即绑定

以ViewPager为Header的ListView滑动冲突解决方案

标签:
Android

开发中,遇到一个需求:轮播图要求随ListView一起滑动。

     实现方式:将轮播图(ViewPager)以Header的形式添加到ListView


     那么问题是,轮播图也即ViewPager的滑动略有卡顿,且ViewPager在水平距离上产生位移时,会触发ListView的下拉刷新。


     解决办法:http://www.bkjia.com/Androidjc/959052.html?qqdrsign=072f8


     这里记录下以上博主的方法


     自定义ViewPager继承自support.v4.ViewPager,在ViewPager中对事件进行拦截分配。 在自定义ViewPager中添加代码


     @Override

public boolean dispatchTouchEvent(MotionEvent ev) {

// TODO Auto-generated method stub

if (parent != null) {

parent.requestDisallowInterceptTouchEvent(true);

}

return super.dispatchTouchEvent(ev);

}


@Override

public boolean onInterceptTouchEvent(MotionEvent arg0) {

// TODO Auto-generated method stub

if (parent != null) {

parent.requestDisallowInterceptTouchEvent(true);

}

return super.onInterceptTouchEvent(arg0);

}


@Override

public boolean onTouchEvent(MotionEvent arg0) {

// TODO Auto-generated method stub

if (parent != null) {

parent.requestDisallowInterceptTouchEvent(true);

}

return super.onTouchEvent(arg0);


  还是在自定义ViewPager中,顺便添加变量以及方法,用于得到ViewPager的Parent容器。

  private ViewGroup parent;

  public void setNestedParent(ViewGroup p) {

this.parent = p;

   }


   以上方法调用,在ViewPager控件初始化的时候,调用

   mViewPager.setNestedParent((ViewGroup) mViewPager.getParent());

原文链接:http://www.apkbus.com/blog-192385-59710.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消