use*_*026 4 android right-to-left
我有一个在LTR设备(android 7.1.1)上显示很好的日期字段,
问题是在RTL设备上,日期字段内容已镜像
因此,在美国设备上,日期将正常显示:03/14/2019
在RTL android设备上,日期将如下所示:2019/14/03
包含值的TextView的代码:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="8dp"
android:layout_marginBottom="8dp"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/inspect_date"
android:textSize="18sp" />
<com.xerox.printerinspection.controls.DateEditText
android:id="@+id/edit_inspect_date"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@color/lightGray"
android:paddingStart="4dp"
android:paddingEnd="4dp"
android:drawableEnd="@android:drawable/ic_menu_my_calendar" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
我像这样设置日期:
Date currentDate = Calendar.getInstance().getTime();
inspectionDateEdit.setDate(currentDate);
Run Code Online (Sandbox Code Playgroud)
解决此问题的正确方法是什么?
更新
父fragment_detail.xml标记如下所示:
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/lightGray"
android:textDirection="locale"
tools:context="com.xerox.MainActivity">
Run Code Online (Sandbox Code Playgroud)
由于父级的android:textDirection="locale"属性(android:supportsRtl="true"在Manifest.xml- 中设置时,甚至可能是默认值,因此可以省略),因此必须为嵌套的子节点定义文本方向-这样就不会继承父级的值; EditText当RTL在LTR设备上强制布局时,这至少适用于:
<androidx.appcompat.widget.AppCompatEditText
android:id="@+id/edit_inspect_date"
android:text="@string/edit_inspect_date"
android:textDirection="ltr"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
Run Code Online (Sandbox Code Playgroud)
可能android:drawableEnd应该是android:drawableRight,这样它就不会受到影响(这取决于是否打算将其翻转到另一侧,无论是否翻转)。
| 归档时间: |
|
| 查看次数: |
344 次 |
| 最近记录: |