【问题标题】:NSAlert without bouncing dock iconNSAlert 没有弹跳停靠图标
【发布时间】:2008-11-17 11:10:17
【问题描述】:

如果您在应用处于后台时输入NSAlert,您的停靠栏图标就会开始弹跳并一直弹跳,直到您切换回来。

我觉得这很烦人。

有谁知道如何为单个应用禁用它?

【问题讨论】:

    标签: cocoa macos


    【解决方案1】:

    创建您自己的 NSApplication 子类,并实现如下内容:

    - (int)requestUserAttention:(NSRequestUserAttentionType)requestType
        {
            if (dontDoThatBouncyThing) {
                return 0;
            }
            return [super requestUserAttention:requestType];
        }
    

    不要忘记将 Info.plist 中的“NSPrincipalClass”从 NSApplication 更改为您自己的 NSApplication 子类。

    【讨论】:

    • 这非常有用。不断弹跳的 Dock 图标是我存在的祸根!谢谢你:)
    • 也适用于 High Sierra。虽然只有 Objective C,但 swift 类崩溃
    【解决方案2】:

    不是我推荐它,但有一个 Haxie 可能会有所帮助:Dock Detox

    我认为它们可以让你拦截弹跳并做其他事情。

    一个快速的谷歌出现了:

    - (void)cancelUserAttentionRequest:(int)request
    

    但我真的不知道这是否适合您的目的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-06
      • 2012-01-10
      • 1970-01-01
      • 1970-01-01
      • 2011-12-11
      • 1970-01-01
      • 1970-01-01
      • 2013-05-23
      相关资源
      最近更新 更多