微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

macos – (NSMenuItem):缺少setter或实例变量

我遇到一个奇怪的错误

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文件中有一个损坏的插座.通常,当您为ivar或属性设置插座时会发生这种情况,以后删除重命名不使用Xcode的重命名功能.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐