选项卡布局滑动方向
Tab layout swipe direction
能否通过代码改变TabLayout中Tabs的滑动方向?
当我的设备语言是英语时它工作正常,但是当我将它更改为阿拉伯语时,很多选项卡消失并且滑动的方向仍然相同(向右)。
注意:在 Manifest 文件中支持 RTL 选项是 "true"。
您面临的实际问题是 ViewPager
仍然不支持 RTL。
这是 well-known 并且非常老的问题 - 您可以在 Google 的问题跟踪器中找到它:
ViewPager RTL swipe direction
到目前为止,我还没有看到任何RLT实施成功的例子。例如,还有一个来自 Booking.com, but it doesn't work with TabLayout。我建议深入研究并尝试解决那里的问题,而不是从头开始编写它。
UPD: 我分叉了 Booking 的 RtlViewPager 并将其修复为 TabLayout 的。 Feel free to try it!
This issue is well known 并且没有预计修复时间。
您可以轻松更改layoutDirection
。我也有这个问题并通过以下方式解决:
tabLayout.setLayoutDirection(View.LAYOUT_DIRECTION_LTR);
试试吧!
您需要执行两个简单的步骤:
更改视图分页器的旋转,
viewpager.setRotationY(180);
然后再次改变fragment容器的方向即viewpager的child,
recyclerView.setRotationY(180);
使用此代码tabLayout.setTabMode(TabLayout.MODE_FIXED);
能否通过代码改变TabLayout中Tabs的滑动方向?
当我的设备语言是英语时它工作正常,但是当我将它更改为阿拉伯语时,很多选项卡消失并且滑动的方向仍然相同(向右)。 注意:在 Manifest 文件中支持 RTL 选项是 "true"。
您面临的实际问题是 ViewPager
仍然不支持 RTL。
这是 well-known 并且非常老的问题 - 您可以在 Google 的问题跟踪器中找到它: ViewPager RTL swipe direction
到目前为止,我还没有看到任何RLT实施成功的例子。例如,还有一个来自 Booking.com, but it doesn't work with TabLayout。我建议深入研究并尝试解决那里的问题,而不是从头开始编写它。
UPD: 我分叉了 Booking 的 RtlViewPager 并将其修复为 TabLayout 的。 Feel free to try it!
This issue is well known 并且没有预计修复时间。
您可以轻松更改layoutDirection
。我也有这个问题并通过以下方式解决:
tabLayout.setLayoutDirection(View.LAYOUT_DIRECTION_LTR);
试试吧!
您需要执行两个简单的步骤:
更改视图分页器的旋转,
viewpager.setRotationY(180);
然后再次改变fragment容器的方向即viewpager的child,
recyclerView.setRotationY(180);
使用此代码tabLayout.setTabMode(TabLayout.MODE_FIXED);