OSX:如何本地化鼠标飞过扩展坞中的应用程序图标时出现的名称?

Posted

技术标签:

【中文标题】OSX:如何本地化鼠标飞过扩展坞中的应用程序图标时出现的名称?【英文标题】:OSX: how to localize the name appearing when the mouse flies over the app icon in the dock? 【发布时间】:2012-12-29 18:01:27 【问题描述】:

当用户的鼠标悬停在 Dock 中的应用程序图标上时,应用程序的名称会出现在应用程序图标上。

根据我刚刚执行的测试,它显示的名称对应于项目目标中定义的“产品名称”(在“构建设置”菜单中)。

问题是:当用户将鼠标悬停在我的应用图标上时,如何本地化此目标产品名称以便让我的应用名称使用正确的语言?

或者是否有任何其他方法可以本地化用户将鼠标放在我的应用图标上时出现的应用名称?

谢谢!

【问题讨论】:

【参考方案1】:

这么多年过去了,这个问题仍然困扰着我(可能还有成千上万的其他程序员)一个多小时。

鉴于 Daij-Djan 上面接受的答案中的链接已经失效(更新的链接现在位于 https://kb.applingua.com/2015/10/how-to-localize-app-names/),我正在用我添加的案例写另一个答案。

确保您已完成以下操作:

    Info.plist 未勾选您的目标 Info.plist 将“应用程序具有本地化显示名称”设置为 YES Info.plist 有“Bundle name”(CFBundleName),其值为“$(PRODUCT_NAME)”(不要问我为什么。如果我将它设置为其他值,它就不起作用。)李> Info.plist 没有“捆绑显示名称”(CFBundleDisplayName) 条目 InfoPlist.strings 已为您的目标打勾 InfoPlist.strings 被勾选为 所有语言(在我的例子中,仅 Base 和 English。)至少是 Base 语言。 InfoPlist.strings 有 both "CFBundleDisplayName" 和 "CFBundleName" 条目

以上对我有用。在过去的一个小时里,我主要是错过了“$(PRODUCT_NAME)”的价值部分。

如果这仍然不起作用,您应该尝试创建一个全新的 XCode 项目并尝试按照上述指南将应用程序命名为其他名称。然后,比较 Info.plist 和你真实项目的 Info.plist,看看有什么不同。这正是我了解“$(PRODUCT_NAME)”要求的方式。

【讨论】:

只是想补充一点,如果不包含CFBundleName,主菜单中的应用程序名称将不会被本地化。如果你想本地化,你需要 CFBundleName,见:***.com/questions/19653849/…【参考方案2】:

有一个信息 InfoPlist.strings 文件,您已在其中本地化 CFBundleDisplayName,您还可以本地化 NSHumanReadableCopyigh 等。

确实需要严格按照本文中提到的步骤进行操作:http://kb.applingua.com/2011/10/how-to-localize-app-names/

【讨论】:

感谢您的回答,但除非我真的错过了什么(我没有忘记清理 :))它不起作用! CFBundleDisplayName -- 见kb.applingua.com/2011/10/how-to-localize-app-names 谢谢!!确实需要严格遵循本文中提到的步骤,尤其是:1)不要忘记删除 info.plist 文件中的任何“Bundle display name”(否则它不起作用......) 2)添加键“应用程序已本地化显示名称”并在 info.plist 中将其设置为是 3)在字符串文件中本地化“捆绑显示名称”... Crazy Apple !!!

以上是关于OSX:如何本地化鼠标飞过扩展坞中的应用程序图标时出现的名称?的主要内容,如果未能解决你的问题,请参考以下文章

OSX 自定义扩展图标关联

如何将侦听器添加到 osx 上的 java 停靠图标

google浏览器如何设置鼠标拖动显示浏览器新窗口

如何在 Dock 中堆叠打开的文档(文本编辑)文件图标? [关闭]

当鼠标移动到woocommerce中的购物车图标时,如何创建幻灯片以显示产品?

如何在 OSX 中获取 DockTile 的屏幕位置?