控制多个多个按钮的最佳方式

Best way to control multiple multiple buttons

我是 swift 的新手,如果这是一个愚蠢的问题,请原谅我。我的程序中有一个按钮列表。单击任何按钮时,相同的操作将应用于该特定按钮(更改背景图片)。

最初我为每个按钮创建了一个单独的按钮和单独的 IBaction。我认为那太愚蠢了。在我在这里搜索之后,我了解到我可以为按钮创建一个数组并将它们 link 用于相同的操作。因此有以下代码。

@IBAction func unselectPai(sender: UIButton) {
    switch sender{
        case pai[0]:
        unselectPaiHelper(0)
        case pai[1]:
        unselectPaiHelper(1)
        case pai[2]:
        unselectPaiHelper(2)
        case pai[3]:
        unselectPaiHelper(3)
        case pai[4]:
        unselectPaiHelper(4)
        case pai[5]:
        unselectPaiHelper(5)
        case pai[6]:
        unselectPaiHelper(6)
        case pai[7]:
        unselectPaiHelper(7)
        case pai[8]:
        unselectPaiHelper(8)
        case pai[9]:
        unselectPaiHelper(9)
        case pai[10]:
        unselectPaiHelper(10)
        case pai[11]:
        unselectPaiHelper(11)
        case pai[12]:
        unselectPaiHelper(12)
        case pai[13]:
        unselectPaiHelper(13)
        default: return
    }
}

但是,我觉得应该有更简单的方法来做到这一点,希望得到指点。

像这样:

@IBAction func unselectPai(sender: UIButton) {
    if let ix = pai.indexOf(sender) {
        unselectPaiHelper(ix)
    }
}