单击时显示 NSUserNotification 附加操作

2024-03-17

在上图中,您可以在 OS X 上看到两个通知。第一个来自我的应用程序,第二个来自 Apple 的 Reminders.app。在图像中你可以看到otherButtonTitle“完成”和actionButtonTitle'之后'。

第二个通知,即来自 Reminders.app 的通知,其行为完全不同。当鼠标悬停时,它会出现一个向下的小箭头,表明单击时有更多操作。事实上,您只需点击once点击“稍后”,它会给你更多的选择。

但是,我无法为我的通知提供相同的行为。我没有在鼠标悬停时看到小箭头,也没有通过单击“稍后”显示更多选项(通知只是被忽略)。仅当在“稍后”上按住鼠标按钮时才会显示更多选项,这并不明显。

我在这里遗漏了一些明显的东西吗?如何让我的通知与 Reminders.app 中的通知完全相同?


在尝试寻找同一问题的解决方案时,我发现了 NSUserNotification Private 类的一个很好的解释,它解释了提醒应用程序如何执行此操作。

https://github.com/indragiek/NSUserNotificationPrivate https://github.com/indragiek/NSUserNotificationPrivate

如果通知类型设置为“Alert”,alternateActionButtonTitles 属性允许您设置要在操作菜单中显示的附加菜单项标题数组,可以通过将鼠标悬停在“操作”按钮上并单击箭头来访问该菜单。

处理通知后,可以使用 _alternateActionIndex 属性检索操作的索引。

所以他们使用的是私有 API。正如该网站的免责声明所述,使用任何此类内容都将导致您的应用程序被 MAS 拒绝,并且如果 API 发生更改,则可能会导致应用程序崩溃。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

单击时显示 NSUserNotification 附加操作 的相关文章

  • ca 证书 Mac OS X

    我需要在emacs 上安装offlineimap 和mu4e 问题是配置 当我运行 Offlineimap 时 我得到 OfflineIMAP 6 5 5 Licensed under the GNU GPL v2 v2 or any la
  • 如果加载 dylib,垃圾收集工作队列会崩溃

    我们正在将应用程序从 10 6 移植到 10 8 我正在查看我们在应用程序中加载的 dylib 我面临着非常不寻常的崩溃垃圾收集工作队列并附有以下消息 malloc Thread suspend unable to suspend a th
  • 为什么 struct tm 中的 tm_year 成员相对于 1900 而不是 macOS 上 C 中的 1970?

    当我遇到这个问题时 我正在尝试专家 C 编程中的示例 我的程序基本上做一件事 使用标准gmtime运行一下 看看自 1970 年以来已经过去了多少年 这是我的程序 include
  • 在 Mac OS X 上构建 Linux 内核

    我正在做一个修改Linux内核的项目 我有一台桌面 Linux 机器 在上面构建内核没有问题 不过 我要去旅行 我想在途中工作 我只有一台 MacBook 当我尝试构建 Linux 内核时 它抱怨说elf h was not found 我
  • java setFullScreenWindow 在 Mac 中隐藏登录对话框

    我使用的是全屏窗口 类似于屏幕保护程序 使用这里的方法 GraphicsEnvironment getLocalGraphicsEnvironment getDefaultScreenDevice setFullScreenWindow t
  • 在 MacOS 终端上运行 ffmpeg [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我对 MacOS 相当陌生 我发现使用终端来获取信息并不容易ffmpeg和我在 Window 上一样正常运行 我有 ffmpeg 二进制文件ffmpe
  • 如何在 swiftUI (macOS) 中检测按键按下和释放

    除了标题之外没什么可说的 我希望能够在按下按键和释放按键时 在 macOS 上 在 swiftUI 视图中执行操作 在 swiftUI 中是否有任何好的方法可以做到这一点 如果没有 有什么解决方法吗 不幸的是 键盘事件处理是其中一个令人痛苦
  • .profile 无法从 Mac 终端运行

    我有一个 profile 文件 我正在终端中读取并使用别名 但在某些时候 别名由于没有明确的原因而停止工作 其他命令仍在工作 为了快速修复 我删除了 rm 并在用户目录中重新创建了 profile 文件 我可以看到 至少在该目录中没有 ba
  • `pyqt5'错误`元数据生成失败`

    我正在尝试安装pyqt5使用带有 M1 芯片和 Python 3 9 12 的 mac 操作系统 我怀疑M1芯片可能是原因 我收到一个错误metadata generation failed 最小工作示例 directly in the t
  • 从 python 检测 macOS 中的暗模式

    我正在编写一个 PyQt 应用程序 我必须添加一个补丁 以便在启用暗模式的 Macos 上可以读取字体 app QApplication Fix for the font colours on macos when running dark
  • OSX 上的 locale.getlocale() 问题

    我需要获取系统区域设置来执行许多操作 最终我想使用 gettext 翻译我的应用程序 我打算在 Linux 和 OSX 上分发它 但我在 OSX Snow Leopard 上遇到了问题 python Python 2 5 2 r252 60
  • 获取 Mojave 上的鼠标坐标

    我有一个非常基本的小命令行应用程序 可以在下次单击鼠标时获取鼠标坐标 import
  • MySQL 数据库无法在 XAMPP for Mac 上启动

    突然我在 mac 上遇到了这个问题 我无法启动我的 MySQL 数据库 我只能启动 ProFTPD 和 Apache Web Server 这是应用程序日志 Starting all servers Starting MySQL Datab
  • 超类与类SpecificationPolicy不匹配

    我得到了一个superclass mismatch for class SpecificationPolicy尝试安装或升级某些brew 软件包时出错 例如 更新安装 supabase CLI 时 brew install supabase
  • 如何在 MacBook Pro 上的 Docker 容器内运行 tkinter?

    我正在尝试运行一个使用以下命令的 python GUI 应用程序tkinter我的 MacBook Pro 上的 docker 容器内的模块 所以我安装了XQuartz https www xquartz org 并跟随本教程 https
  • C++ 是否可以在 MacOS 上与 OpenMP 和 boost 兼容?

    我现在已经尝试了很多事情并得出了一些结论 也许 我监督了一些事情 但似乎我无法完成我想要的事情 问题是 是否有可能使用 OpenMP 和 boost 在 MacOS High Sierra 上编译 C 一些发现 如果我错了请纠正我 Open
  • 使用 C 在 OS X 中获取其他进程的 argv

    我想获得其他进程的argv 例如ps 我使用的是在 Intel 或 PowerPC 上运行的 Mac OS X 10 4 11 首先 我阅读了 ps 和 man kvm 的代码 然后编写了一些 C 代码 include
  • 避免“在此块中强烈捕获自身可能会导致保留周期”消息

    每次我必须在块内使用全局变量或属性时 如下所示 self save if isItSaving NO self saveMyFile 我必须像这样重写 BOOL iis isItSaving id myself self self save
  • 如何在 OSX 上安装 numpy 和 scipy?

    我是 Mac 新手 请耐心等待 我现在使用的是雪豹 10 6 4 我想安装numpy和scipy 所以我从他们的官方网站下载了python2 6 numpy和scipy dmg文件 但是 我在导入 numpy 时遇到问题 Library F
  • Mac 上用户“postgres”的密码身份验证失败

    我在创建新的 psql 用户时遇到问题 因为我无法以 postgres 身份登录 psql 我已尝试过 1 sudo u postgres psql 2 sudo u postgres createuser img site P s e 他

随机推荐

  • Swift 中 SQLite 项目中的 UnsafePointer 问题

    我们在 iOS 和 Swift 中实现 SQLite 不使用包装器或 Objective C 桥接 一切工作正常 除了执行查询和提取结果时 问题在于UnsafePointer
  • Nodejs回调机制——哪个线程处理回调?

    我是 NodeJS 的新手 对 Node js 的单实例模型感到好奇 在一个简单的nodeJs应用程序中 当使用回调异步处理某些阻塞操作时 运行nodeJs的主线程是否也会处理回调 如果请求是从数据库中获取一些数据 并且有 100 个并发用
  • 如何处理 REST 调用、数据持久化、同步和观察 ContentProvider

    我知道这个问题已经被问了太多次了 但我认为我想要解决的问题有点不同 也许更复杂 我将开发一个使用RESTful Web 服务并需要具备以下要求 该应用程序应该以列表和详细方式显示一些书籍及其作者和编辑 该应用程序还应该允许搜索书籍 书籍 作
  • Android - 为什么对地理围栏使用待处理意图

    我刚刚完成了 Android 上的地理围栏教程 http developer android com training location geofencing html http developer android com training
  • Swift3 的所有 UIView 中都有不同的字体,每个都有本地化

    我想使用不同的字体直至每种语言 例如 英语中的 roboto 法语中的 openSans 本土化 arrayOfTitle NSLocalizedString comment comment 0 NSLocalizedString prof
  • 如何使用c++中的sort函数对二维数组进行排序?

    我有一个n x m我需要排序的数组 但是 我只需要查看每个一维数组的第一个值即可对较大的数组进行排序 例如 考虑以下二维数组 1 2 4 4 3 5 我不关心子数组中的第二个值 我只需要查看子数组的第一个值即可对其进行排序 所以 我只会看1
  • 在文件中执行 pgsql 命令的 Shell 脚本

    我正在尝试自动化一组创建模板数据库的过程 我有一组文件 file1 file2 fileN 每个文件都包含创建 TEMPLATE 数据库所需的一组 pgsql 命令 文件 创建的 template1 sql 的内容大致如下 CREATE D
  • 如何成为 iOS 的 MDM 供应商

    对此做了很多研究 看到了几个意见 很少有人说我需要苹果企业帐户 也很少有人说我不需要 拥有 MAC 服务器会有帮助吗 我是否需要拥有企业帐户才能成为 MDM 供应商 任何指点都会很棒 我看到了MDM提供的技术业务文档 但它没有解释任何关于服
  • 我想在单击每个树节点时将信息添加到 jpanel jscrollpane 中

    我想在单击每个树节点时将要添加的信息添加到 jpanel jscrollpane 中 请 1 我想控制在Tree java中选择的树节点的状态 其中Frame java 树 java package pms import java awt
  • 有没有办法更改 Nifi 中 PublishJMS 处理器的交付模式?

    我使用 Nifi PublishJMS 处理器向 IBM MQ 发送消息 消息在 MQ 中具有持久性 持久性 我想将其更改为非持久性 Nifi PublishJms 处理器中是否有属性可以纠正此问题 或者是从MQ端完成的 我无权访问 MQ
  • 如何从Python解码pdf加密文件

    我有一个 PDF 文件和关联的密码 我想仅使用 python 将加密文件转换为清晰版本 I found here https stackoverflow com questions 6413441 python pdf library一些
  • 为什么javascript函数的返回值未定义?

    我有一个函数来检测图像的大小 我希望它返回一个包含宽度和高度的对象 在下面的代码中 sz width 和 sz heightwithin该函数保存这些值 但在返回该值后 该值是未定义的 我缺少什么 function getImgSize i
  • 如何将数据库适配器传递给另一个活动?

    我在理解 Android SDK 中的搜索对话框时遇到一些困难 我的应用程序的 主要活动 提供了一个按钮 如果用户单击此按钮 则会调用搜索对话框 然后 搜索本身在异步任务中完成 因为它可能需要一些时间 到目前为止 一切都很好 主活动还创建一
  • UITextView委托问题

    我正在尝试访问 UITextView 委托并遇到问题 我有一个带有 UITextViewDelegate 协议的 UIViewController 和一个包含 textView 的 Nib 如果我在 viewDidLoad 中设置委托 如
  • 这是以编程方式终止(取消)芹菜任务的最佳方法

    根据 Celery 的文档 我们不应该使用terminate选项中revoke 取消正在执行的任务的函数 当任务陷入困境时 终止选项是管理员的最后手段 它不是为了终止任务 而是为了终止正在执行任务的进程 并且该进程可能在发送信号时已经开始处
  • relativeSource 适用于(嵌套)子属性,而 ElementName 则不适用于

    下面代码的问题是 绑定到SomeClassProp SubTextProp不起作用 源属性未设置为文本框内容 而TextProp确实如此 XAML
  • EXC_BAD_ACCESS 当行数为​​ 0 时 UITableView 崩溃

    当我将表中的行数设置为零时 我的 UITableView 发生了一致的崩溃 它因 EXC BAD ACCESS 错误而崩溃 崩溃是 UITableView 内部的 所以我无法直接看到出了什么问题 尽管这对我来说应该是一个愚蠢的错误 堆栈跟踪
  • C 中快速高效的最小二乘拟合算法?

    我正在尝试对两个数据数组实现线性最小二乘拟合 时间与幅度 到目前为止 我知道的唯一技术是测试 y m x b 中所有可能的 m 和 b 点 然后找出最适合我的数据的组合 以便其误差最小 然而 我认为迭代这么多组合有时是没有用的 因为它测试了
  • matlab中字符串的最大长度

    我是 matlab 的新手 我正在尝试解决以下场景 我有大字符串 需要对其进行异或编码才能获得值 我正在使用以下代码片段来执行该操作 clear clc first abceeeeeeeeeeeeeeeddddddddddddd secon
  • 单击时显示 NSUserNotification 附加操作

    在上图中 您可以在 OS X 上看到两个通知 第一个来自我的应用程序 第二个来自 Apple 的 Reminders app 在图像中你可以看到otherButtonTitle 完成 和actionButtonTitle 之后 第二个通知