如何解决使用外部类方法作为 NSMenuItem 的操作?
第一次发帖者和非常新手的 swift 用户。我遇到了使用外部类方法作为 NSMenuItem 操作的问题。我已经设置了一个名为 NewDocument 的新类,其中包含方法 newDoc。
我想将此方法用作 NSMenuItem 的操作。但是,当我使用它时,菜单项是灰色的?即使我将目标设置为 NewDocument,它仍然不起作用。
非常感谢任何指导或帮助。
//Creating Instance of class
let createNewDocument = NewDocument()
//Use selector to declare method as action
let menuItem = NSMenuItem(title: "New",action: #selector(createNewDocument.newDoc),keyEquivalent: "")
//Set target to new instance of class
menuItem.target = createNewDocument
NewDocument 类
class NewDocument: NSObject {
@objc func newDoc() {
// new document logic
}
}
解决方法
- 目标是类的实例 -
createNewDocument
- 选择器是类型+方法——
#selector(NewDocument.newDoc)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。