我在我的应用中使用了android.support.design.widget.TabLayout,并向其中添加了4个标签。即使已经按住其中一个,我也可以单击所有选项卡。我想知道如何在已经按下任一选项卡时防止其他选项卡被单击。我已经尝试过将分割运动事件设置为false并使用touchevent方法,但是它没有用。提前致谢。
最佳答案
您需要在TabLayout内而不是TabLayout本身的子容器上将拆分运动事件设置为false。像这样:
((ViewGroup) tabLayout.getChildAt(0)).setMotionEventSplittingEnabled(false);
将分割运动事件设置为false只会阻止对其设置了ViewGroup的直接子级的多点触摸。 TabLayout扩展了HorizontalScrollView,因此包含一个子ViewGroup,而后者又包含接收要阻止的click事件的实际选项卡。
关于android - 禁用TabLayout中的选项卡的多点触摸,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32963376/