相关疑难解决方法(0)

iOS 8.1模拟器本地化中断(NSLocalizedString)

TL; DR:
似乎本地化不适用于xCode 6.1和8.1模拟器.
解决方法:
转到"编辑方案">>"运行"(侧栏)>>"选项"选项卡>>"应用程序语言"
在模拟器上选择要运行应用程序的语言.


很长的故事:

我已将xCode更新为6.1.更新删除了iOS 7.x模拟器,只留下8.x模拟器.
我已经完成了以下步骤:

  • 我已经安装了7.x模拟器
  • 清理了这个项目
  • 从模拟器中删除了应用程序
  • 删除了项目的派生文件夹

该项目支持英语和日语.
在7.1模拟器(5s)上,本地化按预期工作.
在8.1模拟器(5s)它不起作用.

我猜测Apple在模拟器上破坏了一些东西,因为它适用于真实设备.

关于这个的任何意见,其他人都遇到过类似的问题吗?


编辑
它似乎是模拟器中的一个错误,参考:
Apple Dev Forums

xcode nslocalizedstring ios ios-simulator xcode6.1

104
推荐指数
1
解决办法
2万
查看次数

在iOS 8.1模拟器上更改语言不起作用

如果我将iOS 8.1模拟器上的语言更改为任何内容并尝试从代码中检测到这一点

NSString * language = [[NSLocale preferredLanguages] objectAtIndex:0];
NSLog(@"Language: %@", language);
Run Code Online (Sandbox Code Playgroud)

我得到了"恩".我已经尝试重置导航器等.我已经尝试使用iOS 7.1运行时(在Xcode 5.1.1中),它工作正常.有没有人设法找到解决此问题的方法?

localization ios ios-simulator ios8.1 xcode6.1

76
推荐指数
1
解决办法
3万
查看次数

NSLocale preferredLanguages objectAtIndex:0总是返回"en"

模拟器的语言已经改为日语,为什么[[NSLocale preferredLanguages] objectAtIndex:0] 总是返回"en"

首选语言和地区都与"en"无关,它"en"来自哪里?

这是截图

试图获得[[NSLocale preferredLanguages] objectAtIndex:2],然后崩溃显示*** Terminating app due to uncaught exception 'NSRangeException', reason: '-[__NSCFArray objectAtIndex:]: index (2) beyond bounds (1)

这是否意味着模拟器中没有设置任何语言?太奇怪了!

在使用iOS8.1/7.1升级到Xcode 6.1之前,这种情况从未发生过.

同时,在我的iPhone 5上试过同样的东西,控制台输出正确的东西.

为什么这么奇怪?有没有人有这样的问题?

更新:1

  • 删除Xcode和模拟器,然后从Mac Store下载重新安装.
  • 创建一个新的简单项目,更改simlulator的语言
  • 仍然总是"en".

哦! 怎么了....


更新:2

  • 今天,通过重新格式化HD重新安装了全新的Yosemite
  • 下载Xcode 6.1
  • 启动一个新的简单默认项目
  • 把这些代码
  • 更改/添加模拟器语言,日语,荷兰语,英语,
  • 天啊!只得到了"en"再次,日语和英语没有发现!

为什么还只能"en"找到一个?日语和英语在哪里?

模拟器怎么了?

我错过了什么吗?

iphone nsuserdefaults region nslocale ios8.1

25
推荐指数
1
解决办法
7235
查看次数

在Xcode 6.1中缺少本地化

自从昨天更新到Xcode 6.1以来,iOS模拟器中没有正确的应用程序本地化.我将语言和地区切换到德语/德语,我的应用程序仍然是英语,只有英语键盘可用.Xcode 6.0.1和iOS 8.0 Simulator中的本地化很好.

有没有人有类似的问题?

在此输入图像描述

objective-c ios ios-simulator xcode6 ios8

6
推荐指数
3
解决办法
2381
查看次数

为什么Xcode 6.1在IOS 8模拟器中杀死[NSLocale preferredLanguages]

昨天Xcode更新到v6.1.

现在,[NSLocale preferredLanguages]在iPhone中返回一个空数组,但仅适用于IOS 8 - 在iPhone 5和6模拟器中.IOS 7模拟器仍然正常工作.

物理iPhone 6设备似乎没有受到影响 - 它只是模拟器.

通常的尝试 - 清理项目,重新启动Xcode,重启Mac - 没有任何区别.那么,什么是最好的策略 - 等待Xcode 6.1.1,或者向Apple列表(哪一个)发送投诉?

xcode6

4
推荐指数
1
解决办法
2944
查看次数