gpt4 book ai didi

java - Android更改语言配置会弄乱布局

转载 作者:行者123 更新时间:2023-11-30 11:51:43 25 4
gpt4 key购买 nike

所以我正在尝试为我的 Android 应用程序添加希伯来语支持。我不得不将版本更改为 2.2,以便它具有内置的希伯来语字体。布局中的一些东西搞砸了,但我修复了它们。

但还有一件事遗留下来 - 出于某种原因,在强制使用希伯来语语言环境时,我的布局之一被弄乱了......不知道为什么。即使在两种语言环境(英语和希伯来语)中使用相同的布局,它仍然会以这种方式搞砸(但文本仍然粘在左边)

这是正常的布局(图表正在全屏显示)

Normal layout

这是乱七八糟的:

Messed up layout

两种 xml 布局相同,但希伯来语布局在 TextView 上设置了 'android:gravity="right"'。

这里是更改语言环境和配置的代码。在此之后立即调用“setContentView”。

        Locale locale = new Locale("iw");
Locale.setDefault(locale);
Configuration config = new Configuration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());

如果我已经在问...有什么方法可以在 android 中设置 rtl 读取吗?如您所见,希伯来语布局也弄乱了文本 rtl。

我曾尝试使用 rtl unicode 字符\u200f,但如您所见,它根本没有帮助....

有什么想法吗?谢谢。

最佳答案

我必须在 list 中添加这个:

  <supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:anyDensity="true"
/>

它奏效了。

关于java - Android更改语言配置会弄乱布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7289060/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com