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内的自定义视图上滑动不会启动水平滑动