想根据这一点构建具有从右到左和从左到右语言和UI的iOS应用程序吗

想根据这一点构建具有从右到左和从左到右语言和UI的iOS应用程序吗,ios,objective-c,localization,internationalization,right-to-left,Ios,Objective C,Localization,Internationalization,Right To Left,我想建立一个iOS应用程序,它可以处理多种语言,如英语和阿拉伯语。 此语言更改设置将在我的应用程序中使用。(不取决于设备语言)。现在,当用户从应用程序设置更改语言时,屏幕UI应该根据语言从LTR或RTL更新。 我不想使用两个故事板或重新启动我的应用程序 现在我正在使用基本国际化和AutoLayout来设计整个UI 并在NSUserDefaults中设置所选语言 NSArray*语言=[NSArray arrayWithObjects:MY_SELECTED_LANG,nil]; [[NSUse

我想建立一个iOS应用程序,它可以处理多种语言,如英语和阿拉伯语。 此语言更改设置将在我的应用程序中使用。(不取决于设备语言)。现在,当用户从应用程序设置更改语言时,屏幕UI应该根据语言从LTR或RTL更新。 我不想使用两个故事板或重新启动我的应用程序

现在我正在使用基本国际化和AutoLayout来设计整个UI 并在NSUserDefaults中设置所选语言


NSArray*语言=[NSArray arrayWithObjects:MY_SELECTED_LANG,nil];
[[NSUserDefaults standardUserDefaults]setObject:language forKey:@“AppleLanguages”];


此代码有效,但为此我必须重新启动我的应用程序。有没有更好的办法。我的目标设备是iOS 7及更高版本。

您有没有研究过NSLayoutConstraint的“追踪锚”和“引导锚”?它们类似于“leftAnchor”和“rightAnchor”,但它们不是绝对的,而是依赖于当前的语言。因此,如果您使用这些约束而不是左/右,iOS应该能够帮助您完成一些工作,因为它可以识别左/右阅读语言之间的差异,并通过前导/尾随约束锚反映这一差异。

您不应该有应用程序内语言切换器,因为从长远来看,您将遇到其他几个问题。除非您想为用户提供一个真正令人困惑的体验,否则您应该始终使用系统语言。@wakachamo。谢谢,现在我计划不使用应用程序内语言切换器。这将取决于设备语言。@Sayakiss哪个帖子?可以给我链接吗?