2

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

回答

2

您需要在TabLayout中的子容器上将分离运动事件设置为false,而不是在TabLayout本身上。事情是这样的:

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

设置拆分移动事件为false将只从的ViewGroup的直接孩子是在设置阻止多点触控。 TabLayout扩展了Horizo​​ntalScrollView,因此包含一个子ViewGroup,而后者又包含接收要阻止的点击事件的实际选项卡。

+0

工程就像一个魅力;) – gMale

+0

注意:这是不是在5 +设备上的问题。不过,我确实在4.2上看到它。 – gMale