要实现网易新闻3.0版本首页的效果我的布局是<viewpager>
  <listview>
     <viewpager/>
     ....
  </listview>
</viewpager>
其中的listview 的第一项 是一个viewpager重写了内层的viewpager的dispatchTouchEvent和onInterceptTouchEvent
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
final int action = ev.getAction();

isScroll = super.onInterceptTouchEvent(ev); switch (action) {
case MotionEvent.ACTION_UP:
isScroll = true;
}
return isScroll;
}
@Override
public boolean dispatchTouchEvent(MotionEvent ev)

isScroll = super.dispatchTouchEvent(ev);
if(isScroll) 
{  
requestDisallowInterceptTouchEvent(true);
}
return isScroll;
}在android4.0以后的版本中没有问题了
但在android2.3版本中
在滑动内层viewpager之后,外层的viewpager不能滑动了,这个是什么原因呢?Androidlistviewviewpager

解决方案 »

  1.   

    csdn 的 android论坛人气这么差呢?看来已经不是几年以前我在web版混的时候了
    自己解决了,判断了一下滑动的时候触摸的位置,把父控件给弄失效了getParent().requestDisallowInterceptTouchEvent(true);
      

  2.   

    public boolean dispatchTouchEvent(MotionEvent ev) {
    getParent().requestDisallowInterceptTouchEvent(true);// 这句话的作用 告诉父view,我的单击事件我自行处理,不要阻碍我。
    return super.dispatchTouchEvent(ev);
    }