我知道这个问题似乎有些重复,但我无法找到解决问题的好方法。我将 tablayout 与带有 fragmentPagerAdapter 的viewpager一起用作viewpager的适配器。如您所知 viewpager 不支持rtl布局,因此我在rtl语言环境中遇到问题。我希望标签从正确开始(第一个标签贴在屏幕右侧),用户可以正确滑动。我怎样才能做到这一点?有帮助吗?
答案 0 :(得分:3)
好消息的家伙:)。 Android最近添加了名为 ViewPager2 的新UI组件。
https://developer.android.com/jetpack/androidx/releases/viewpager2
请在下面找到代码和链接:
dependencies {
implementation "androidx.viewpager2:viewpager2:1.0.0"
}
先前ViewPager实现的改进:
下面的链接介绍了有关从ViewPager到ViewPager2的迁移指南:
https://developer.android.com/training/animation/vp2-migration
我们还有演示示例:
https://github.com/android/views-widgets-samples/tree/master/ViewPager2
答案 1 :(得分:2)
最好的解决方案是将viewpager旋转到180:
root = tree.getroot()
for elem in root.iterfind(‘d/e’f’):
然后,旋转包含tablayout选项卡内容的内部视图(以反转对内容的影响)。例如,对于textview:
mViewPager.setRotationY(180); //rotate the viewpager
对于PagerTabStrip,您还应该旋转180个可见选项卡:
if (textView.getRotationY() != 180) {
textView.setRotationY(180);
}
在阿拉伯语应用中,这对我有用。它也适用于任何rtl语言环境。
答案 2 :(得分:0)
之前我遇到过这种情况,并且有两种解决方案
1-让我们假设您有4个片段F1,F2,F3和F4,现在您必须反向获取适配器中的所有片段,如此F4,F3,F2和F1,一旦加载片段设置选择fragment is = pager.setCurrentItem(Titles.length - 1);
并确保也反转标题。
第二种解决方案是使用自定义视图寻呼机,如
希望你能处理这个