禁用TabLayout中的选项卡的多点触控

时间:2015-10-06 06:43:10

标签: android multi-touch androiddesignsupport android-tablayout

我在我的应用程序中使用了android.support.design.widget.TabLayout并添加了4个选项卡。即使我已按下其中一个标签,我也可以点击所有标签。我想知道如何在任何一个标签按下时阻止其他标签被点击。我已经尝试将分裂运动事件设置为false并使用touchevent方法,但它不起作用。提前谢谢。

1 个答案:

答案 0 :(得分:2)

您需要在TabLayout内的子容器上将split motion events设置为false,而不是在TabLayout本身上。像这样:

((ViewGroup) tabLayout.getChildAt(0)).setMotionEventSplittingEnabled(false);

将split motion events设置为false只会阻止设置的ViewGroup的直接子节点的多点触控。 TabLayout扩展了Horizo​​ntalScrollView,因此包含一个子ViewGroup,而后者又包含接收要阻止的点击事件的实际选项卡。