【问题标题】:How can i make my android app look the same on RTL and LTR languages?如何让我的 android 应用在 RTL 和 LTR 语言上看起来一样?
【发布时间】:2019-04-06 20:34:40
【问题描述】:

在 LTR 语言手机上运行时,我的应用看起来很好,如下所示:

但是在 RTL 语言手机上操作时,我的应用会像这样粘在右侧:

或者你甚至看不到这样的屏幕:

如何让我的应用看起来与 LTR 手机上的完全一样?

p.s 我已经尝试过重构调整到 RTL 语言,但它没有改变任何东西。 谢谢

【问题讨论】:

标签: android


【解决方案1】:

听起来您想从根本上禁用应用中的 RTL 支持。为此,请转到您的 AndroidManifest.xml 并将此属性添加到 <application> 标记:

<application
    android:supportsRtl="false"
    ...>

请注意,该属性默认存在,但设置为true(因此您只需将值更改为false)。

【讨论】:

  • 请注意,更好的做法是正确支持 RTL,始终使用 start/end 而不是 left/right应用
  • Ben P. - 感谢您的回答,解决了问题。我认为您的评论遗漏了一些东西-如果supportsRtl 为真,那么即使您确实使用了开始和结束,但您只有英语,在设置为RTL 语言的设备上,您的应用程序看起来也不正确。例如,活动标题将在右侧而不是左侧。许多其他事情看起来也不正确.. 使用 start/end 绝对是正确的做法,但它让你得到的是,如果你为 RTL 语言提供语言文件,你的屏幕在那些语言中看起来是正确的,不需要调整布局。
【解决方案2】:

在您的 Xml 中为您的视图指定边距时,始终使用属性 marginStart 和 marginEnd 而不是 marginLeft 和 marginRight。有关此的更多信息,请参阅此答案 here.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-14
    • 2020-10-27
    • 1970-01-01
    • 2016-09-04
    • 2019-01-05
    • 1970-01-01
    • 2016-04-10
    • 2021-01-09
    相关资源
    最近更新 更多