【问题标题】:Text adaptation according to device language direction (LTR, RTL) on Android在 Android 上根据设备语言方向(LTR、RTL)进行文本适配
【发布时间】:2016-02-28 09:08:20
【问题描述】:

我的一些按钮使用了很棒的字体。其中之一是“返回”按钮。在 LTR 语言上,我希望按钮是一个指向左侧的箭头,而在 RTL 上,是一个指向右侧的箭头。

现在我正在做的是: 我的“值”文件夹中有两个字符串

<string name="icon_back_ltr">&#xf060;</string>
<string name="icon_back_rtl">&#xf061;</string>
<color  name="icon_back_color">#FFFFFF</color>

然后,我以编程方式检查设备语言是否为 RTL 语言。如果是这样,我会相应地修改按钮上的文本。

我的问题是,有没有更好的方法呢?不需要以编程方式检查布局方向的一种?例如,我知道我可以将单词“Hello”定义为英语(使用“values”),然后定义为希伯来语中的其他内容(使用“values-iw”)。问题是,我可以定义一个特定的字符串是 all LTR 语言中的文本 A,然后是 所有 RTL 语言中的文本 B?

【问题讨论】:

    标签: android right-to-left direction


    【解决方案1】:

    定义两个资源指令values-ldrtl(表示“layout-direction-right-to-left”)和values-ldltr(表示“layout-direction-left-to-right” ")。 在您的应用清单中声明您的应用支持 RTL 镜像。 具体来说,将android:supportsRtl="true" 添加到清单文件中的&lt;application&gt; 元素,并将targetSdkVersion 设置为17 或更高。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-04-25
      • 1970-01-01
      • 2021-01-31
      • 1970-01-01
      • 2018-04-17
      • 2017-08-14
      • 2016-09-04
      相关资源
      最近更新 更多