React-native 支持 RTL 和 LTR,无需更改设备语言
Posted
技术标签:
【中文标题】React-native 支持 RTL 和 LTR,无需更改设备语言【英文标题】:React-native support RTL and LTR without changing device language 【发布时间】:2018-11-30 08:50:43 【问题描述】:我使用 react-native-i18n 包来支持国际语言。它正在工作,但现在我希望我的应用程序可以根据语言更改应用程序内部的 RTL 和 LTR,而无需更改设备语言。我在我的应用程序中使用了本机基础组件。 所以我不能改变他们的风格,如果有可能,那怎么办?
我创建了更改语言的设置选项,它正在更改,但是如何将 LTR 更改为 RTL 和 RTL 更改为 LTR 应用程序的所有组件。 如果有任何解决方案,请告诉我。
【问题讨论】:
在 android 设备开发者设置中,有一个复选框可以强制 RTL 布局(不更改语言)。这是你一直在寻找的吗? 谢谢,但我并没有在寻找安卓设备设置的任何变化。我只是通过在应用程序中使用方向样式来解决我的问题。 请添加为反应应用程序设置方向样式的方式作为您的答案。如果您对它感到满意,SO 鼓励您接受您自己的答案。来自 react-native docs:
direction 指定用户界面的方向流。这 默认为
inherit
,但root
节点除外,该节点将具有值 基于当前的语言环境。
这意味着如果您将顶部View
样式方向更改为"rtl"
,所有子组件都应继承该方向。
【讨论】:
以上是关于React-native 支持 RTL 和 LTR,无需更改设备语言的主要内容,如果未能解决你的问题,请参考以下文章
将 Native App LTR 反应到 RTL 更改,而无需重新启动应用程序