ios - 如何更改 userInterfaceLayoutDirection

标签 ios objective-c user-interface autolayout right-to-left

我有一个应用程序支持两种语言,英语和阿拉伯语。英语是从左到右,阿拉伯语是从右到左。

我有一个名为 LanguageViewController 的 Controller 。其中有两个按钮:阿拉伯语和英语。当用户点击“阿拉伯语”时,我的应用程序的语言从英语变为阿拉伯语。我在我的项目中使用自动布局。

当语言改变时,我希望我的对象的位置同时被镜像。但它没有&当我关闭我的应用程序并再次运行时,对象的位置被正确镜像。

问题:How to force "Respect Language Direction" from RTL to LTR and vice versa @Raz 有同样的问题。但我不想建立一个新的 Storyboard。当语言从 En 更改为 Ar 并且您退出 App 时,userInterfaceLayoutDirection 的值从 UIUserInterfaceLayoutDirectionLeftToRight 更改到 UIUserInterfaceLayoutDirectionRightToLeft。我使用 NsLog 查看 userInterfaceLayoutDirection 的值。当我按下“阿拉伯语”按钮时,该值没有改变,但是当我再次运行时,该值发生了变化。我的问题是如何在不退出且不加载新 Storyboard的情况下强制更改 userInterfaceLayoutDirection

最佳答案

您究竟是如何使用按钮更改应用程序的首选语言的?

应用程序的 userInterfaceLayoutDirection 在启动时设置一次。目前无法在应用程序运行时更改它。

关于ios - 如何更改 userInterfaceLayoutDirection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27948605/

相关文章:

c++ - 如何在 QWidget 子类之外调用 QMessageBox 静态 API

android - 像新的 Android Market 那样创建自定义样式的按钮类?

ios - iPhone X 上的比例高度问题

ios - 动态 UIActionSheet 'otherButtonTitles:'

objective-c - 在 Xcode 中使用 git 时,UserInterfaceState.xcuserstate 未提交

ios - 从 presentModalViewController 推送 uiviewcontroller

java - 给一个对象一个方法

ios - SceneKit: Material 预览始终为黑色

ios - 如何创建一个允许对 UIImageViews 进行分页和缩放的 UIScrollView?

Objective-C 或 Cocoa First