【发布时间】:2019-02-11 04:09:33
【问题描述】:
我在 Swift 中有一个应用程序,它在一个页面上有多个 UISegmentedControls,所有这些都有相同的目标,即方法“answerClicked”。但是,我需要一种方法将信息传递给此方法,说明刚刚单击了 WHICH UISegmentedControl。
我知道参数不能通过选择器传递——有没有一种方法可以获得这些信息并将其传递给“answerClicked”方法?
class Flowchart{
//Init segmented controls up here...
segmentedControl0.addTarget(self, action: #selector(answerClicked), for: .valueChanged)
segmentedControl1.addTarget(self, action: #selector(answerClicked), for: .valueChanged)
segmentedControl2.addTarget(self, action: #selector(answerClicked), for: .valueChanged)
@objc func answerClicked(){
//Ideally would have an argument "segmentedControlNumber: Int"
//How else to tell 0, 1, and 2 apart?
}
}
【问题讨论】: