在RTL模式下,像"20分钟前“这样的文本将是”20分钟前“。
我觉得系统把数字当作阿拉伯单词,所以在文本的最右边有20。
<TextView
android:id="@+id/Mytext"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="end|right|center_vertical"
android:paddingLeft="4dp"
android:paddingStart="4dp"
android:text="5 minutes before"
android:textDirection="locale"/>
原字符串"20分钟之前“是预期的。
发布于 2019-09-11 17:30:05
如果您删除“android:textDirection=”区域设置“”,则可以看到您想要的内容。我不知道你想要哪个方向的"5分钟前“。如果留在RTL和LTL模式,您可以设置“android:gravity="start|center_vertical"",否则设置为"android:gravity="end|center_vertical”
发布于 2019-09-11 17:03:03
请检查以下代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:id="@+id/Mytext"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:paddingLeft="4dp"
android:paddingStart="4dp"
android:text="20 minutes before"
/>
</LinearLayout>
发布于 2019-09-11 17:04:16
尝尝这个
<TextView
android:id="@+id/Mytext"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="start"
android:textAlignment="viewStart"
android:paddingLeft="4dp"
android:paddingStart="4dp"
android:text="5 minutes before"/>
LTR的输出
5分钟前
RTL的输出
5分钟前的
5
https://stackoverflow.com/questions/57885469
复制相似问题