以编程方式更改停靠标题

Posted

技术标签:

【中文标题】以编程方式更改停靠标题【英文标题】:change dock-title programmatically 【发布时间】:2010-02-22 17:20:25 【问题描述】:

是否可以在运行时更改我的应用程序的标题,该标题显示在 Dock 中?

【问题讨论】:

感谢 Dave - 当我回答时,我将其读作“我的应用程序的 TILE ... 显示在块中”。 :-) 我已经继续并删除了我的答案,因为它完全无关紧要。对 Nobik 和 Diederick 的噪音感到抱歉 你的意思是当你在停靠图标上时显示的标签对吗?你能弄清楚这个吗?我也有同样的需求。我可以通过重命名 .app 然后在图标上切换“保持在 Dock 中”来做到这一点,但是“保持在 Dock 中”切换我无法弄清楚如何纯粹以编程方式进行。 【参考方案1】:

您可以尝试更改停靠磁贴的徽章标签:

[[NSApp dockTile] setBadgeLabel:@"My custom text"]

【讨论】:

这不起作用,这会在停靠图标的顶部放置一个标签。这不会更改停靠图标悬停时显示的文本。【参考方案2】:

不,这是不可能的。 Dock 使用进程的文件系统项的显示名称。对于捆绑的应用程序,这就是应用程序包。

该显示名称可以本地化,但对于任何给定的系统语言,这是应用程序包的静态属性。

【讨论】:

我注意到重命名应用程序包文件(最上面的一个,包含“内容”的文件)确实会更改标题,如果您切换“保持在 Dock”或退出然后重新启动应用程序,或者即使你做killall Dock。这是预期的行为吗?然而,在运行killall Dock 之后,我注意到当您单击停靠图标时,窗口仍然会聚焦,但是如果您右键单击停靠图标,“退出”菜单项就会消失,所以它就像半脱臼但不完全,这很奇怪。 这是一张显示悬停标签的图像,有官方的方法来改变这个吗? i.imgur.com/CjytiTk.pnghttp://i.imgur.com/CjytiTk.png 我明白你在问什么,这就是我的回答:不,没有办法以编程方式更改该标题。 嘿,Ken 有什么非编程方式吗?就像info.plist 中的键/值对?没关系,在应用程序关闭之前它不会占用坞站,我明白这一点。但我只需要一种方法给它一个文本,因为我的 .app 被命名为一串数字,一个 id。然后我在桌面上创建名称为“Firefox - profile name here”的别名文件。谢谢肯,你对人很有耐心! Dock 使用文件系统项(在本例中为应用程序包)的显示名称。影响它显示的标题的唯一方法是更改​​应用程序包的名称。至少,这是我能找到的唯一方法。

以上是关于以编程方式更改停靠标题的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式将应用程序图标添加到安装时停靠

以编程方式更改导航栏标题

UITabbarController 以编程方式更改栏项目标题

当输入的值以编程方式更改时触发更改事件

以编程方式更改 UINavigationbar 背景颜色和标题字体/颜色

为啥不以编程方式快速更改 uibutton 标题?