解决ViewPager嵌套ViewPager滑动冲突问题

解决ViewPager嵌套ViewPager滑动冲突问题  
重写内部ViewPager并调用外部ViewPager的requestDisallowInterceptTouchEvent(true)
public class ParentViewPager extends ViewPager{
   private int childVPHeight=0;
   public ParentViewPager(Context context) {
   super(context);
   // TODO Auto-generated constructor stub
   init(context);
   }
  
   public ParentViewPager(Context context, AttributeSet attrs) {
   super(context, attrs);
   // TODO Auto-generated constructor stub
   init(context);
   }
  
   private void init(Context context) {
   // TODO Auto-generated method stub
   // 获取屏幕宽高
   WindowManager windowManager = (WindowManager)
context.getSystemService(context.WINDOW_SERVICE);
   int disWidth = windowManager.getDefaultDisplay().getWidth();
   //根据屏幕的密度来过去dp值相应的px值
   childVPHeight=(int) (context.getResources().getDisplayMetrics().density
* disWidth + 0.5f);
   }
  
   @Override
   public boolean onInterceptTouchEvent(MotionEvent arg0) {
   // TODO Auto-generated method stub
   //触摸在子ViewPager所在的页面和子ViewPager控件高度之内时
  //返回false,此时将会将触摸的动作传给子ViewPager
   if(getCurrentItem()==1 && arg0.getY()
   return false;
   }

阅读更多
文章标签: viewpager 滑动冲突
个人分类: 开发
下一篇Android常见面试题
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭