Android:ListView,在ViewPager内滑动

Android:ListView,在ViewPager内滑动,android,listview,android-viewpager,Android,Listview,Android Viewpager,我有一个包含整个活动的ViewPager活动。在这个ViewPager中有一个ListView,它只覆盖片段的底部。ListView可识别滑动事件您可以左右滑动项目,但当您想要滑动列表项目时,ViewPager会切换页面,因此无法工作。 是否有一种简单的方法来处理此问题,以便ViewPager不会接收列表中的触摸事件 谢谢我的第一个想法是我可以帮助你 public boolean onTouch(View v, MotionEvent e) { if(e.getAction() == M

我有一个包含整个活动的ViewPager活动。在这个ViewPager中有一个ListView,它只覆盖片段的底部。ListView可识别滑动事件您可以左右滑动项目,但当您想要滑动列表项目时,ViewPager会切换页面,因此无法工作。 是否有一种简单的方法来处理此问题,以便ViewPager不会接收列表中的触摸事件

谢谢

我的第一个想法是我可以帮助你

public boolean onTouch(View v, MotionEvent e) {
    if(e.getAction() == MotionEvent.ACTION_DOWN){
       listItem.getParent().requestDisallowInterceptTouchEvent(true);
    }
}
我的第一个想法是我可以帮助你

public boolean onTouch(View v, MotionEvent e) {
    if(e.getAction() == MotionEvent.ACTION_DOWN){
       listItem.getParent().requestDisallowInterceptTouchEvent(true);
    }
}

这很好,但当我更改ViewPager内的数据并在其适配器上调用notifyDataSetChanged,同时在ListView内滑动时,它不再工作ViewPager会翻转,尽管我仍然希望它保持不变,并且只要通过ListView接收触摸事件(如果您调试它),在NOTIFYDATASETCHETCHANGE之后,是否仍会调用onTouch?在列表视图或列表中的每一项中,您在何处包含了onTouch?onTouch将使用ACTION\u CANCEL调用,然后不再调用它。然后调用ViewPager的onTouch。我已经在列表视图中包含了onTouch,而不是所有列表项。我不知道它是否有效,但是在列表项中设置onTouch怎么样?@Tom Macdonald,在自定义BaseAdapter的getView返回的视图中使用该代码设置onTouchListener。这可以很好地工作,但当我更改ViewPager内的数据并在其适配器上调用notifyDataSetChanged,同时在ListView内滑动时,它将不再工作ViewPager将翻转,尽管我仍然希望它保持并只接收触摸通过ListView的事件如果对其进行调试,则在notifyDataSetChanged之后是否仍会调用onTouch?在列表视图或列表中的每一项中,您在何处包含了onTouch?onTouch将使用ACTION\u CANCEL调用,然后不再调用它。然后调用ViewPager的onTouch。我已经在listView中包含了onTouch,而不是所有的列表项。我不知道它是否有效,但是在列表项中设置onTouch怎么样?@Tom Macdonald,在自定义BaseAdapter的getView返回的视图中使用该代码设置onTouchListener。