我不知道我对此的态度是否从根本上是错误的,但我正在努力解决一个(看似微不足道的?!)本地化问题.
我想在导航栏中显示“系统”UITabBarItem(更多,收藏夹,精选等…)的标题.但是我从哪里得到字符串? MainWindow.nib的字符串文件不包含字符串(我没想到它),并且读取TabBarItem的标题返回nil,这就是难以理解的问题.
我被告知,没有办法实现它,我只需要为相关术语添加我自己的本地化字符串.但我根本就不(想)相信!!在某些语言中,这可能很容易,但是,查看,“更多”已经在某些语言中提供了多个可能的单词.我也不喜欢简单地将这些单词用于翻译,因为它仍然取决于翻译者确切知道Apple使用的术语.我在这里错过了一些简单的东西吗?其他人做什么?
显然,在我的测试设备上设置系统语言,只是想看看Tab项目有哪些标题是另一种“明显”的可能性.但是我确实遇到过像这样的半烘焙解决方法的问题.这对大多数语言都有效,但对于俄语或日语,我真的很开心.
我确信必须有一种更可靠的方法来做到这一点.当然,SDK中必须有一个.strings文件,它定义了这些字符串?
提前致谢…
丰富
解决方法
简单而不幸的答案是,除了极少数标准元素(例如“后退”按钮)之外,您还需要自己本地化所有字符串.是的,UIKit有自己的Localization.strings文件,但显然是在你的应用程序沙箱之外,所以你无法访问它.
几年前我向Apple提交了一个关于为普通按钮标题,标签项标签等提供操作系统级别本地化的错误.这个bug仍然是开放的但很明显他们还没有完成它(对不起,我没有雷达#便利).