我在使用自定義NSMenuItem()
時遇到問題。到目前爲止,我已經創建了一個類:Swift中的自定義NSmenuitem
class AllCurrencyList: NSView {
@IBOutlet var allccyimage: NSImageView!
@IBOutlet var allccytext: NSTextField!
}
我已創建了上面,但我掙扎在我的菜單使用它提到的兩個IBOutlet
一個廈門國際銀行。這裏是我想要做的事:
let menu = NSMenu()
let item = NSMenuItem()
item.view = AllCurrencyList //I get the error [Cannot assign a value of type 'AllCurrencyList.Type' to a value of type 'NSView?']
item.allccytext = "foo"
item.allccyimage = NSImage(named: "foo")
大多數我已經找到了教程在目標C,而我努力尋找在斯威夫特的例子。
謝謝你的幫助。
編輯
Grimxn的答案是正確的,但由於某些原因,我一直得到fatal error: unexpectedly found nil while unwrapping an Optional value on (item.view as! AllCurrencyList).allccytext.stringValue = "foo"
。
要修復它,我必須在我的主要故事板中創建我的自定義視圖,並創建一個IBoutlet
引用我在創建NSMenu
的類中的視圖。我仍然不明白爲什麼我不能使用我在不同的故事板文件中創建的視圖。對於任何運行到同一個問題,this was of great help.
謝謝你,雖然我得到一個錯誤:'價值的類型'NSView?'?當我嘗試使用'item.view.allccytext.stringValue'時,沒有成員'allccytext''給了什麼? – anto0522
查看更新以回答... – Grimxn
謝謝你,現在我得到一個錯誤'致命的錯誤:意外地發現零,同時解開一個可選值'(item.view as!AllCurrencyList).allccytext.stringValue =「foo」 '我檢查了我的IBoutlets已正確鏈接,他們是... – anto0522