gpt4 book ai didi

安卓 : Change entire app layout directions programmatically

转载 作者:IT老高 更新时间:2023-10-28 22:06:06 25 4
gpt4 key购买 nike

如何将整个应用布局方向更改为 RTL?我正在编写一个应用程序,用户必须在首次启动时选择它的语言,并且布局应该根据用户选择更改为 RTL 或保持 LTR。我曾经为每个布局添加 android:supportsRtl="true"AndroidManifestandroid:layoutDirection="rtl" 但这种方法有一些问题如下:

一个问题是,当我将方向更改为 RTL 时,ActionBar 主页图标或导航按钮(启用主页时)仍然是 LRT,只是向右移动。

我也尝试以编程方式改变方向,结果是一样的:

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1){
getWindows().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL);
}

enter image description here

有没有什么办法可以强制所有 Activity 同时变成 RTL 或者我们应该在每个 Activity 中分别设定方向?

最佳答案

您可以在应用程序的 minSdk >= 17 时使用这段代码。

Farsi我使用fa,你可以使用其他rtl语言。

Configuration configuration = getResources().getConfiguration();
configuration.setLayoutDirection(new Locale("fa"));
getResources().updateConfiguration(configuration, getResources().getDisplayMetrics());

关于安卓 : Change entire app layout directions programmatically,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31904627/

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