首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IOS-9在希伯来语/阿比卡语中从右向左禁用

IOS-9在希伯来语/阿比卡语中从右向左禁用
EN

Stack Overflow用户
提问于 2015-09-20 12:04:32
回答 3查看 995关注 0票数 1

请建议如何将所有的应用程序以编程方式向右转左。从iOS 9开始,苹果将希伯来/亚比克区域设置为从左到右(镜像)。

如果有任何改变的选择,请提出建议?

问候亚基尔。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-10-06 11:45:43

将界面语言更改为英语。目前,这是唯一的办法(除非苹果相信这是个坏主意)

编辑:如果您希望您的应用程序表现为“仅英语”-您可以强制在代码: in AppDelegate中添加到didFinishLaunchingWithOptions中的区域设置

代码语言:javascript
复制
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
        NSArray *languages = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleLanguages"];
        if (![[languages firstObject] isEqualToString:@"en"]) {
            [[NSUserDefaults standardUserDefaults] setObject:@[@"en"] forKey:@"AppleLanguages"];
            [[NSUserDefaults standardUserDefaults] synchronize];
        }
}
票数 2
EN

Stack Overflow用户

发布于 2015-10-07 14:28:17

除了波阿兹的答案之外,把这段代码放在main.m文件中而不是didFinishLaunching方法中可能更好,也更安全。(没有足够的代表将此作为评论添加到原来的答案中)

还有..。您不需要获取语言数组/检查第一语言,只需将其设置为"en":

代码语言:javascript
复制
NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[NSArray arrayWithObject:@"en"] forKey:@"AppleLanguages"];
[defaults synchronize];
票数 1
EN

Stack Overflow用户

发布于 2016-11-02 03:34:24

代码语言:javascript
复制
if(OS_GREATER_THAN_OR_EQUALTO(@"9.0"))
{
    if(RightToLeftLanguage)
    {
        [[UIView appearance] setSemanticContentAttribute:UISemanticContentAttributeForceRightToLeft];
    }
    else
    {
        [[UIView appearance] setSemanticContentAttribute:UISemanticContentAttributeForceLeftToRight];
    }
}

“[ setSemanticContentAttribute:UISemanticContentAttributeForceRightToLeft];”外观--此语句强制视图以从右到左的模式呈现,而不考虑应用程序或设备语言。确保在viewDidLoad中调用此语句。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32679194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档