我正在通过为recyclerview和viewpagers实现setRotationY来管理RTL内容,但似乎仅在具有API 28的设备中会产生滚动/滑动问题,否则它工作得很好。如果我删除setRotationY,它的工作就很好。有人遇到过这个问题吗?如果是这样,如何解决?
P.S。 :旋转360f不会影响滚动,但是旋转180f会影响滚动。
答案 0 :(得分:0)
您也可以在recyclerview或viewpager中使用layoutDirection,例如:
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layoutDirection="locale"/>
或膨胀的视图。 这样就可以完美地工作。
答案 1 :(得分:0)
检查SDK的当前版本:
if(Build.VERSION.SDK_INT >= 28) {
// Call some material design APIs here
recyclerView.setLayoutDirection(View.LAYOUT_DIRECTION_LOCALE);
} else {
// Implement this feature without material design
recyclerView.setRotationY(180);
}
答案 2 :(得分:0)
问题与我正在使用的this滑动标签条库有关。它将与其他答案完美配合,我们只需要向viewpager添加layoutDirection
属性即可。
答案 3 :(得分:0)
由于ViewPager.setRotatingY(180),我在API 28上遇到了ViewPager的问题,因此我可以支持RTL,我尝试用layoutDirection =“ locale”替换旋转,但是没有用。我找到了一个支持RTL ViewPager的库,这里是链接https://github.com/duolingo/rtl-viewpager。
将其添加到依赖项中,只需确保将layoutDirection =“ locale”添加到RtlViewPager
<com.duolingo.open.rtlviewpager.RtlViewPager
android:layoutDirection="locale"
android:keepScreenOn="true"
android:id="@+id/quranViewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true"
/>