自定义视图阻止在ViewPager中滑动

时间:2014-05-05 09:54:56

标签: android android-fragments android-viewpager

我有ViewPagerFragmentStatePagerAdapter相关联。

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

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

任何人都知道这是什么问题?我尝试将这些自定义视图设置为catchesandroid:clickable="true",但它没有用。

2 个答案:

答案 0 :(得分:0)

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

此外,如果您的自定义视图包含文本视图,请确保将android:singleLine="true"替换为android:maxLines="1",否则会破坏viewpager水平滚动! (一定要喜欢Google的可爱错误!)

答案 1 :(得分:-2)

将此行添加到自定义视图

    @Override
public boolean onTouchEvent(MotionEvent event) {

    return super.onTouchEvent(event);
}