我在設置視圖上有多個UISwitch,並將所有UISwitch鏈接到同一個IBAction函數。確定哪個UISwitch被挖掘
@IBAction func settingSwitchTapped(sender: AnyObject) {
}
如何找到這UISwitch被竊聽,這樣我就只保存,實際上改變了開關(而不是保存所有其他人也)
我在設置視圖上有多個UISwitch,並將所有UISwitch鏈接到同一個IBAction函數。確定哪個UISwitch被挖掘
@IBAction func settingSwitchTapped(sender: AnyObject) {
}
如何找到這UISwitch被竊聽,這樣我就只保存,實際上改變了開關(而不是保存所有其他人也)
這就是sender
參數的唯一目的。
如果您所有的交換機都定義爲IBOutlets,那麼您可以將sender
與其中的每一個進行比較,以便知道您點擊了哪一個。
你也可以給每個人一個不同的tag
財產,並根據sender.tag
決定做什麼。
爲每個交換機設置一個獨特的編號標籤。
您可以通過以下得到確切開關:
switch = sender.tag
希望它可以幫助
@IBAction func settingSwitchTapped(sender: AnyObject) {
switch (sender.tag){
case 101: // your tag
// executable code goes here
break;
case 102: // your tag
break;
case 103: // your tag
break;
default:
break;
}
}
太好了!爲了比較,我們必須將發件人:AnyObject更改爲發件人:UISwitch – Steve