5

我已阅读如何创建多语言 Android 应用程序?android 支持多种语言吗?我知道如何创建一个具有多种语言的 android 应用程序。但我的问题是关于显示不同语言的从右到左和从左到右的文本。

例如,在英语中 a TextViewas 标签应该在左侧EditText,在波斯语中,TextView应该在右侧EditText

在此处输入图像描述 在此处输入图像描述

如何在我的用户界面中支持从右到左的语言和 UI?

我应该为从右到左的语言设计不同的布局吗?如何在 RTL 布局中指定文件夹?像layout-rtl什么?或者我如何确定语言是从右到左的?

有没有更简单的方法?

4

2 回答 2

5

Android 4.2 中引入了官方支持,请参阅RTL 布局支持您可以通过在此处输入链接描述查询是否正在使用。

您可以尝试在所有情况下使用相同的布局,或者在“layout-ldrtl”中指定特定的布局。

根据您的示例,如果您使用的是RelativeLayout ,则需要使用android:layout_alignParentStart属性,而不是android:layout_alignParentLeft来自动将标签从左向右移动。

于 2013-10-08T12:38:17.350 回答
0

您可以创建一个不可翻译的单词列表,以便您知道调用这些资源将始终获得相同的语言。例如:

<string name="english">English</string>
<string name="english_fixed" translatable="false">English </string>

在这种情况下,对的引用R.string.english_fixed将始终显示相同的字符串,同时R.string.english会翻译单词。然后,您可以在左右两个不同的 TextView 中使用两种不同的资源。

我明白这个问题了吗?

于 2013-10-08T12:37:28.180 回答