如何让对话框和顶部菜单在不同语言中保持相同的方向?

问题描述 投票:0回答:1

我试图让我的应用程序方向与英语用户相同,即使我的手机采用希伯来语设置。对于活动,我使用

android:layoutDirection="ltr"
命令,但此命令不适用于警报对话框(正向按钮和负向按钮位于对话框的左侧且顺序错误)和顶部菜单。 有没有办法强制应用程序保持方向?

java android drop-down-menu android-alertdialog
1个回答
0
投票

尝试对对话框进行此操作(它们出现在新的

Window
中,并且未应用设置为
Activity
窗口的参数,xml 和代码)

Dialog dialog = dialogBuilder.create();
ViewCompat.setLayoutDirection(dialog.getWindow().getDecorView(), LayoutDirection.LTR);
dialog.show();

在创建对话框(

build()
调用)之前,它的窗口尚未创建,甚至布局也未解析/绘制,因此现在您将收到引用尚不存在的视图的异常

show
ing包括创建步骤,所以你也可以尝试在
setLayoutDirection
调用之后调用
show()

© www.soinside.com 2019 - 2024. All rights reserved.