LinearLayout:showDividers =“ middle”在RTL布局方向上不起作用

gon*_*alo 8 android divider android-layout android-linearlayout

所以我有这个LinearLayout,在这里我使用分隔线在项目之间添加一些间距:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:showDividers="middle"
    android:divider="@drawable/spacer_standard">

    <TextView
        android:id="@+id/product_view_price"
        android:fontFamily="@font/primary_font"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:maxLines="1"/>

    <TextView
        android:id="@+id/product_view_sale_discount"
        android:fontFamily="@font/primary_font"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:maxLines="1"
        android:visibility="gone"
        tools:visibility="visible"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

当配置为从左到右时,此方法可以按预期工作,但在从右到左的区域设置中,分隔线会显示,但会被忽略(它在文本视图后呈现,并且不应用间距)。

以防万一,这是可绘制的分隔线

<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">

<size
    android:width="@dimen/standard_single_margin"
    android:height="@dimen/standard_single_margin" />

<solid android:color="@android:color/transparent" />
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过简单地手动将分隔线添加为视图来解决问题,但是我试图避免这种情况,因为我还在其他较大的布局上使用了这些分隔线