Swift 如何使用字典将NSButton映射到Int

Swift 如何使用字典将NSButton映射到Int,swift,Swift,我有一个有很多按钮的界面。我想把它们放在字典里,把它们映射成数字 我尝试了以下方法: import Cocoa class AppDelegate: NSObject, NSApplicationDelegate { @IBOutlet var window: NSWindow @IBOutlet var number0 : NSButton @IBOutlet var number1 : NSButton @IBOutlet var number2 : NS

我有一个有很多按钮的界面。我想把它们放在字典里,把它们映射成数字

我尝试了以下方法:

import Cocoa

class AppDelegate: NSObject, NSApplicationDelegate {

    @IBOutlet var window: NSWindow
    @IBOutlet var number0 : NSButton
    @IBOutlet var number1 : NSButton
    @IBOutlet var number2 : NSButton
    @IBOutlet var number3 : NSButton
    @IBOutlet var number4 : NSButton
    @IBOutlet var number5 : NSButton
    @IBOutlet var number6 : NSButton
    @IBOutlet var number7 : NSButton
    @IBOutlet var number8 : NSButton
    @IBOutlet var number9 : NSButton

    var number = Dictionary<NSButton, Int>()

    func applicationDidFinishLaunching(aNotification: NSNotification?) {
        number = [number0: 0]
    }

}
如果我像这样将
Int
更改为
AnyObject

var number = Dictionary<NSButton, AnyObject >()
var number=Dictionary()
它很好用


我是做错了什么还是这是一个bug?

试着在字典中使用整数

var number = Dictionary<UIButton, Integer>()
var number=Dictionary()

Integer是Int实现的协议。我不太清楚为什么会这样。

如果将0转换为Int,会发生什么?我会得到完全相同的错误
var number = Dictionary<UIButton, Integer>()