TabLayout 用户可点击的标签

TabLayout user clickable tabs

我有一个连接到 ViewPager 的 TabLayout。几乎一切正常:我可以看到选项卡,我可以在 ViewPager 中滑动页面并更新选项卡。

但是,我找不到如何允许用户单击选项卡 select 而不是滑动...

有人知道怎么做吗?

问题是由于在 FrameLayout 应该只有一个子项时使用了一个有两个子项的 FrameLayout。 link 描述了问题:Not possible to click a Button

我有:

<FrameLayout>
    <TabLayout>
    <ViewPager>
</FrameLayout>

FrameLayout 仅将事件传递给最后一个直接子级,因此 ViewPager 正在获取所有事件。这就是为什么它仍然允许我正确滑动视图。

解决方案是使用:

<FrameLayout>
    <LinearLayout>
        <TabLayout>
        <ViewPager>
    </LinearLayout>
</FrameLayout>

这样 TabLayout 和 ViewPager 都可以获取事件。