2016-03-14 72 views
0

我在設置視圖上有多個UISwitch,並將所有UISwitch鏈接到同一個IBAction函數。確定哪個UISwitch被挖掘

@IBAction func settingSwitchTapped(sender: AnyObject) { 

} 

如何找到這UISwitch被竊聽,這樣我就只保存,實際上改變了開關(而不是保存所有其他人也)

回答

1

這就是sender參數的唯一目的。

如果您所有的交換機都定義爲IBOutlets,那麼您可以將sender與其中的每一個進行比較,以便知道您點擊了哪一個。

你也可以給每個人一個不同的tag財產,並根據sender.tag決定做什麼。

+0

太好了!爲了比較,我們必須將發件人:AnyObject更改爲發件人:UISwitch – Steve

0

爲每個交換機設置一個獨特的編號標籤。

您可以通過以下得到確切開關:

switch = sender.tag 

希望它可以幫助

0
@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; 
    } 
}