Horizo​​ntalScrollView 在 RTL 模式下不向左滚动

HorizontalScrollView doesn't scroll to left in RTL mode

我的应用程序中有带 android:supportsRtl="true" 的 Horizo​​ntalScrollView。但是它不是向左滚动,而是向右滚动。我该如何解决这个问题?

    <HorizontalScrollView
    android:id="@id/audioScrollView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="@dimen/size_normal"
    android:layout_toStartOf="@+id/retakeBtn"
    android:layout_toEndOf="@+id/recordBtn"
    android:background="@drawable/border_drawable"
    android:paddingBottom="@dimen/size_micro"
    android:paddingTop="@dimen/size_micro"
    android:scrollbars="none"
    >

我运行17级api,所以xml中的属性应该没问题。

看看这个例子,你所要做的就是将这一行 android:layoutDirection="rtl" 添加到 HorizontalScrollView

的属性中
<HorizontalScrollView
    android:id="@+id/horizontalScrollView"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layoutDirection="rtl">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="1" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="2" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="3" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="4" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="5" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="6" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="7" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="8" />

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="9" />
    </LinearLayout>
</HorizontalScrollView>

记住HorizontalScrollView里面的views会根据ltrrtl

排列

使用此代码并创建倒置视图

final HorizontalScrollView s=(HorizontalScrollView)ll.findViewById(R.id.horizontalScrollView);
    s.postDelayed(new Runnable() {
        public void run() {
            s.fullScroll(HorizontalScrollView.FOCUS_RIGHT);
        }
    }, 100L);