Android 自定义视图防止在ViewPager中滑动

Android 自定义视图防止在ViewPager中滑动,android,android-fragments,android-viewpager,Android,Android Fragments,Android Viewpager,我有一个ViewPager连接到FragmentStatePagerAdapter 现在,来自FragmentStatePagerAdapter的每个片段都由自定义视图组成 问题是,如果我开始在这些自定义视图上滑动,ViewPager不会对滑动做出反应,但我必须小心地将手指放在这些自定义视图之间,然后滑动,以便它捕捉到滑动动作 有人知道问题出在哪里吗?我尝试将这些自定义视图设置为android:clickable=“true”和android:clickable=“false”,但没有成功。将这

我有一个
ViewPager
连接到
FragmentStatePagerAdapter

现在,来自
FragmentStatePagerAdapter
的每个片段都由自定义视图组成

问题是,如果我开始在这些自定义视图上滑动,
ViewPager
不会对滑动做出反应,但我必须小心地将手指放在这些自定义视图之间,然后滑动,以便它
捕捉到滑动动作


有人知道问题出在哪里吗?我尝试将这些自定义视图设置为android:clickable=“true”和android:clickable=“false”
,但没有成功。

将这一行添加到自定义视图中

    @Override
public boolean onTouchEvent(MotionEvent event) {

    return super.onTouchEvent(event);
}

在自定义视图的构造函数中,使用
requestDisallowerWinterCeptTouchEvent(true)


此外,如果您的自定义视图包含文本视图,请确保将
android:singleLine=“true”
替换为
android:maxLines=“1”
,否则会中断viewpager的水平滚动!(一定很喜欢谷歌可爱的bug!)

你的自定义
视图是否有
onTouchListener
?我的自定义视图没有onTouchListener。你可以使用
android:focusble=“true”
android:enable=“true”
。不幸的是,这不起作用;在viewpager内的自定义视图上滑动不会启动水平滑动