Xcode 委托 link 反对

Xcode delegate link to object

我是 Xcode IDE 和 swift 的新手,我想更好地了解它的工作原理。

我知道可以对 UI 元素进行委托,例如组合框。这允许使用 NSComboBoxDelegate 支持的方法。没关系。我了解如何将一个组合框 link 编辑到方法中。

我的问题是:如果有两个 comboBox 元素委托给一个 .swift 文件,我如何定义哪个 "trigger" 方法,例如 comboBoxSelectionDidChange?我必须有单独的 .swift 文件吗?每次更改时该方法都有效吗?有没有办法 link 每个方法的每个对象,因为它可以处理出口和动作?

我相信这是一个简单的问题,程序员可能会轻松回答,但对于初学者来说,抽象和更简单的空洞理解速度太慢了。

您的元素(例如 UIPicker)可以使用相同的委托方法。因此,您需要通过标签来区分它们。或按实际参考。显然,您需要先给每个 'combo boxes' 一个标签,然后才能使用标签选项。

例如:

func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
    {
        if(pickerView.tag == 0)
        {
            //do whatEver you want with the picker that has tag 0
        }
        else if(pickerView.tag == 1)
        {
            //do whatEver you want with the picker that has tag 1
        }
    }

或参考:

func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int)
    {
        if(pickerView == self.cityPicker)
        {
            //do whatEver you want with the city picker
        }
        else if(pickerView = self.countryPicker)
        {
            //do whatEver you want with the country picker
        }
    }