Сокрытие кнопок / изображений ярлык?
Есть ли ярлык для этого кода?
-(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;
}
2 ответа
Решение
Определенно должны быть способы для этого:) Это действительно зависит от того, как вы создаете и храните свои кнопки. Вы можете хранить их в массиве и обрабатывать их в цикле:
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;
Вы также можете использовать Key Value Coding
Я думаю, что это будет что-то вроде этого:
for (int i = 1; i <=35; i++)
{
[self setValue:NO forKey:@"[NSString stringWithFormat:@"button%d", i]];
}