gpt4 book ai didi

xcode - 一个应用程序窗口未加载本地化字符串

转载 作者:行者123 更新时间:2023-12-03 17:10:33 25 4
gpt4 key购买 nike

我有一个使用基本国际化功能的 OS X 应用程序(一个 XIB + 许多字符串文件)。我使用 -AppleLanguages '(cs)' 命令行参数启动应用程序来测试捷克语本地化。它可以工作,但有一个特定的窗口不会加载本地化字符串,它以英语(基本开发语言)显示。

该窗口是一个带有本地化字符串文件的普通 XIB。我已经检查了构建的产品,字符串文件就在那里。 XIB 的加载方式很简单:

[[NSWindowController alloc] initWithWindowNibName:@"NibName"]

当我在构建方案编辑器中打开“显示非本地化字符串”调试开关时,我在控制台中收到一堆以下警告:

Localizable string "B1p-qW-vKP.title" not found in strings table "NibName" of bundle CFBundle 0x100305400 </System/Library/Frameworks/AppKit.framework> (not loaded).

我尝试了干净的构建,并删除了派生数据文件夹以重新开始。还尝试删除 XIB 并将其替换为仅包含一个可本地化字符串的简单测试窗口。没有任何帮助。我可能做错了什么?

<小时/>

更新:当我从工作字符串文件之一中删除本地化字符串时,运行时的错误消息有点不同:

Localizable string "90.title" not found in strings table "AppMenu" of bundle CFBundle 0x100202460 </long/path/to/My.app> (executable, loaded).

请注意, bundle 是不同的。在虚假窗口的情况下,本地化系统似乎试图从错误的包(AppKit.framework)加载字符串。为什么?

最佳答案

我明白了。由于我不需要窗口中的自定义行为,因此我使用了带有自定义 XIB 界面的普通 NSWindowController。但在运行时,本地化系统从与此类关联的包中加载字符串:AppKit。我创建了一个空的 NSWindowController 子类,现在字符串已从我的应用程序包中正确加载。

关于xcode - 一个应用程序窗口未加载本地化字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32047945/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com