macos - (NSMenuItem) : missing setter or instance variable

标签 macos swift

我遇到了一个奇怪的错误:

2015-04-02 12:20:14.642 test[21167:257788] Failed to connect     
(testApp) outlet from (test.AppDelegate) to (NSMenuItem): missing 
setter or instance variable
inserted id: 122

我在将 menuItem 添加到菜单并将功能连接到它时发生。

我不知道问题是什么。该应用程序运行良好,但我认为忽略错误不是一个明智的主意。 setter 或实例变量是什么意思?为什么需要它?

更新:这是相关代码:

import Cocoa
import Foundation

@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {

@IBOutlet weak var window: NSWindow!
@IBOutlet weak var statusMenu: NSMenu!

let statusItem = NSStatusBar.systemStatusBar().statusItemWithLength(-1)

func applicationDidFinishLaunching(aNotification: NSNotification) {
    let icon = NSImage(named: "statusIcon")

    statusItem.image = icon
    statusItem.menu = statusMenu
    // Time for constant repeat
    NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: "timerRepeat", userInfo: nil, repeats: true)
}

// Method to call the tracking core
func timerRepeat() {
    //....
}

@IBAction func frontEnd(sender: NSMenuItem) {
    var targetURL : String = NSBundle.mainBundle().resourcePath!
    targetURL = targetURL + "/" + "front.app"
    let workspace = NSWorkspace()
    workspace.launchApplication(targetURL)
}


@IBAction func menuClicked(sender: NSMenuItem) {
    NSApplication.sharedApplication().terminate(self)
}   
}

最佳答案

您的 xib 文件中有一个损坏的 socket 。通常,当您为 ivar 或属性设置导出时会发生这种情况,但后来不使用 Xcode 的重命名功能将其删除或重命名。

关于macos - (NSMenuItem) : missing setter or instance variable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29410675/

相关文章:

xcode - 如何使用xcode随处获取选定的文本

swift - 转换到另一个 View Controller 时,应用程序崩溃而没有有关崩溃的信息

swift - 无法显式特化泛型函数、多个泛型

swift - 图片来自 xcassets iOS11

swift - 添加枚举后失去了对 Codable 的一致性

ios - Swift 支持 WebRTC 吗?

macos - 安装程序如何在 Mac OSX 上设置 PATH 变量?

windows - 是否有 git 的设置允许克隆在一个操作系统上使用 http 而在另一个操作系统上使用 ssh?

c - 在 Mac 上使用 gcc 静态链接 cilk 库

macos - NS窗口闪烁