2014-02-11 61 views
0

我有一個疑問。請回答我這些問題。 1.爲什麼我們使用IBOutletCollection而不是IBOutlet? 2.如果我們使用IBOutletCollection使用四個按鈕,如何找到哪個按鈕被觸發? 3.什麼是標籤屬性?和標籤屬性的使用?IBOutletCollection和標籤屬性

回答

4

創建這樣

@property (retain, nonatomic) IBOutletCollection(UIButton) NSMutableArray *buttonToSelected; 

這裏的正確IBOutletCollection按鈕,你可以看到所選按鈕

-(IBAction)selectedButton:(id)sender 
    { 
     for (UIButton *btn in self.buttonToSelected) 
     { 
     if (sender == btn) 
     { 
      btn.isSelected == !btn.isSelected 
     } 
     } 
    } 

嘗試這樣

+0

謝謝。 :)標籤屬性呢?我可以使用標籤屬性選擇按鈕嗎? –

+0

是使用btn.tag .it會給標籤屬性。 – Sport

+0

當現在選擇BTN就可以得到按鈕 – Sport

1

爲什麼我們使用IBOutletCollection代替IBOutlet?

因爲某時您對單個項目不感興趣。 IBOutletCollections通常用於批量更改屬性。例如,您想更改字體的UILabels。或者您想要更改圖層的邊框寬度的UIButton。

當您關心視圖的表示而非其內容時,可以使用它們。

如果我們使用四個按鈕使用IBOutletCollection,如何找到哪個按鈕被觸發?

您通常不應該爲此使用IBOutletCollection。創建個人IBOutlets。您可以同時執行這兩個操作,在IBOutletCollection中擁有一個UIButton併爲其提供單獨的IBOutlet是完全正確的。

IBOutletCollections絕不會取代IBOutlets。

什麼是標籤屬性?和標籤屬性的使用?

Documentation。當您在代碼中創建特定視圖時,標記最有用。如果你有一個UIViewController或UIView子類,我不會使用它們。
因爲if (sender == self.addButton)if (sender.tag == 2)更清晰