Fix incorrect layout in RTL

Fix illustration and the textview alginment.
The imageview doesn't change the direction of the drawable,
so we change scale type based on layout direction.

Bug: 187526643
Test: manually test with with locale ur and en
Change-Id: Ie4544f0eb00309a6132e4b6d794ad2a76966133c
This commit is contained in:
ryanlwlin
2021-05-11 19:35:10 +08:00
parent 2853e766f5
commit 7960b88481
2 changed files with 8 additions and 2 deletions

View File

@@ -50,7 +50,7 @@
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceListItemSecondary"
android:layout_marginTop="8dp"
android:layout_alignLeft="@id/title"
android:layout_alignStart="@id/title"
android:layout_below="@id/title" />
<ImageView
@@ -59,6 +59,6 @@
android:layout_height="@dimen/accessibility_imageview_size"
android:layout_marginTop="16dp"
android:scaleType="fitStart"
android:layout_alignLeft="@id/title"
android:layout_alignStart="@id/title"
android:layout_below="@id/summary"/>
</com.android.settings.widget.CheckableRelativeLayout>

View File

@@ -61,6 +61,12 @@ public class ItemInfoArrayAdapter<T extends ItemInfoArrayAdapter.ItemInfo> exten
}
final ImageView image = root.findViewById(R.id.image);
image.setImageResource(item.mDrawableId);
if (getContext().getResources().getConfiguration().getLayoutDirection()
== View.LAYOUT_DIRECTION_LTR) {
image.setScaleType(ImageView.ScaleType.FIT_START);
} else {
image.setScaleType(ImageView.ScaleType.FIT_END);
}
return root;
}