2010-02-17 103 views
1

這段代碼有沒有捷徑?隱藏按鈕/圖像快捷方式?

-(IBAction)reset{ 
    button1.hidden=NO; 
    button2.hidden=NO; 
    button3.hidden=NO; 
    button4.hidden=NO; 
    button5.hidden=NO; 
    button6.hidden=NO; 
    button7.hidden=NO; 
    button8.hidden=NO; 
    button9.hidden=NO; 
    button10.hidden=NO; 
    button11.hidden=NO; 
    button12.hidden=NO; 
    button13.hidden=NO; 
    button14.hidden=NO; 
    button15.hidden=NO; 
    button16.hidden=NO; 
    button17.hidden=NO; 
    button18.hidden=NO; 
    button19.hidden=NO; 
    button20.hidden=NO; 
    button21.hidden=NO; 
    button22.hidden=NO; 
    button23.hidden=NO; 
    button24.hidden=NO; 
    button25.hidden=NO; 
    button26.hidden=NO; 
    button27.hidden=NO; 
    button28.hidden=NO; 
    button29.hidden=NO; 
    button30.hidden=NO; 
    button31.hidden=NO; 
    button32.hidden=NO; 
    button33.hidden=NO; 
    button34.hidden=NO; 
    button35.hidden=NO; 
} 

回答

1

確實必須有方法:)它真的取決於你如何創建和存儲你的按鈕。你可以將它們存儲在陣列中的一個循環處理它們:

for (UIButton* button in buttonsArray) 
    button.hidden = NO; 

您也可以在創建它們分配一個唯一的tag屬性一個UIButton(此屬性在UIView定義,並在其所有子類可用)。這樣,你不需要爲按鈕單獨的存儲,你也可以把他們藏在一個循環:

for (int tag = min_tag_value; tag < max_tag_value;++tag) 
    // Assume that self.view is a view that contains your buttons 
    [self.view viewWithTag:tag].hidden = NO; 
0

你也可以使用Key Value Coding

我認爲這將是這樣的:

for (int i = 1; i <=35; i++) 
{ 
    [self setValue:NO forKey:@"[NSString stringWithFormat:@"button%d", i]]; 
}