7

我不知道我的方法是否从根本上是错误的,但我正在努力解决一个(看似微不足道的?!)本地化问题。

我想在导航栏中显示“系统”UITabBarItem(更多、收藏夹、精选等)的标题。但是我从哪里得到字符串呢?MainWindow.nib 的字符串文件不包含字符串(我没想到它会包含),并且读取 TabBarItem 的标题返回 nil,这让我很困惑。

有人告诉我,没有办法实现它,我只需要为相关术语添加我自己的本地化字符串。但我根本不(想)相信!在某些语言中这可能很容易,但是在某些语言中查找“更多”已经为我提供了多个可能的词。我也不喜欢简单地发送这些词进行翻译,因为它仍然取决于翻译者确切知道 Apple 使用的是哪个术语。所以我在这里错过了一些简单的东西吗?其他人做什么?

显然,在我的测试设备上设置系统语言并简单地查看选项卡项的标题是另一种“明显”的可能性。但我真的对这样的半生不熟的解决方法有疑问。这适用于大多数语言,但是当谈到俄语或日语时,我真的会很开心。

我相信必须有一种更可靠的方法来做到这一点。在 SDK 中的某个地方肯定有一个 .strings 文件定义了这些字符串吗?

在此先感谢...丰富

4

1 回答 1

0

简单而不幸的答案是,除了极少数标准元素(例如后退按钮)之外,您还需要自己本地化所有字符串。是的,UIKit 有自己的 Localization.strings 文件,但显然它在您的应用程序沙箱之外,因此您无权访问它。

几年前,我向 Apple 提交了一个关于为常见按钮标题、选项卡项标签等提供操作系统级别本地化的错误。该错误仍然存​​在,但显然他们还没有完成(抱歉,我没有雷达#便利)。

于 2014-02-13T06:20:43.923 回答