我越有例如2 UIButton
隐藏以上的元素
我知道如何隐藏每个:
button1.hidden = 1;
button2.hidden = 1;
有没有办法隐藏在一个时间这2个按钮? (如:[button1, button2].hidden = 1
)
感谢
编辑:任何方式排列的风格?
如:
array *buttons = [button1, button2 ...] ;
buttons[0,3,5,10].hidden = 1;
我越有例如2 UIButton
隐藏以上的元素
我知道如何隐藏每个:
button1.hidden = 1;
button2.hidden = 1;
有没有办法隐藏在一个时间这2个按钮? (如:[button1, button2].hidden = 1
)
感谢
编辑:任何方式排列的风格?
如:
array *buttons = [button1, button2 ...] ;
buttons[0,3,5,10].hidden = 1;
如果有按钮阵列像:
NSArray *buttonsArray = @[bt1,bt2,bt3,bt4];
和对应于按钮状态布尔值的数组:
NSArray *stateArray = [@YES,@NO,@NO,@YES];
,那么你可以:
for (UIButton *bt in buttonsArray){
bt.hidden = [[stateArray objectAtIndex:[buttonsArray indexOfObject:bt]] boolValue];
}
或更有效的一个:
for(int index=0; index<buttonsArray.count; index++){
[[buttonsArray objectAtIndex:index] setHidden:[[stateArray objectAtIndex:index] boolValue]];
}
或更清晰,可读的一个:
for(int index=0;index<buttonsArray.count; index++){
UIButton *bt = [buttonsArray objectAtIndex:index];
BOOL *state = [[stateArray objectAtIndex:index] boolValue];
bt.hidden=state;
}
最简单的是(理论上),@adali给出的评论,将其添加到父视图和然后隐藏父视图。但是,您应该适当地创建父视图,并根据您的UI设置父视图框架。 (选择哪一个更容易给你:我。e创建按钮,状态数组等或创建一个父视图并正确定位)
正是我在找什么!谢谢 !! – 2013-03-11 09:13:31
可以这样做
button1.hidden = button2.hidden = YES;
但如果你能创造出不的方法,这将帮助你,例如
- (void)allButtonHidden:(BOOL)value {
button1.hidden = value;
button2.hidden = value;
}
,并调用它
[self allButtonHidden:YES];
哦,gawd,多数民众赞成在可怕.. – Rob 2013-03-11 08:29:19
谢谢,如果button1.hidden = 0和button2.hidden = 1 ??任何正确的方式如下:[button1,button2] .hidden = [0,1]? – 2013-03-11 08:29:55
'button1.hidden =!button2.hidden = YES;' – 2013-03-11 08:31:25
你可以简单地使用:
for (UIButton *btn in [self.view subviews]) {
btn.hidden = YES;
}
或者您也可以通过一个条件查找按钮:
for (UIButton *btn in [self.view subviews]) {
if ([btn tag]<=2) {
btn.hidden = YES;
}
}
创建一个函数做到这一点:
- (void)buttonAction
{
for (UIButton *button in [self.view subviews])
{
if (button.hidden == YES)
button.hidden = NO;
else
button.hidden = YES;
}
}
那么,这是非常棘手的,但根据您的要求,有一个替代解决方案。
1)将标签为每个按钮
[button1 setTag:1];
[button2 setTag:2];
...
...
2)找到与标签按钮对象(其可以与运行循环)
for(int i=0;i<numberOfButton;i++)
{
UIButton *targetButton = (UIButton *)[self.view viewWithTag:i];
targetButton.hidden = 1;
}
与一行或两行的用户有所不同吗? – 2013-03-11 08:28:26
不,但我有很多按钮设置隐藏或不...所以我正在寻找一个提示,把它放在一个数组中,并隐藏在一行中的元素。 – 2013-03-11 08:35:30
把它们放在相同的父视图,然后隐藏父视图 – adali 2013-03-11 08:41:13