我在我的应用程序中使用了android.support.design.widget.TabLayout并添加了4个选项卡。即使我已按下其中一个标签,我也可以点击所有标签。我想知道如何在任何一个标签按下时阻止其他标签被点击。我已经尝试将分裂运动事件设置为false并使用touchevent方法,但它不起作用。提前谢谢。
答案 0 :(得分:2)
您需要在TabLayout内的子容器上将split motion events设置为false,而不是在TabLayout本身上。像这样:
((ViewGroup) tabLayout.getChildAt(0)).setMotionEventSplittingEnabled(false);
将split motion events设置为false只会阻止设置的ViewGroup的直接子节点的多点触控。 TabLayout扩展了HorizontalScrollView,因此包含一个子ViewGroup,而后者又包含接收要阻止的点击事件的实际选项卡。