-1

我想知道如何检查数组的每个元素是否隐藏?我的数组包含 20 个按钮

btnsArr=[[NSMutableArray alloc] initWithObjects:btn1,btn2,btn3,btn4,btn5,btn6,btn7,btn8,btn9,btn10,btn11,btn12,btn13,btn14,btn15,btn16,btn17,btn18,btn19,btn20, nil];

每个按钮都隐藏有一个条件......

其实我正在尝试开发一个记忆匹配游戏。我也有一个两分钟的计时器。如果用户在时间之前完成,我应该在什么条件下弹出您获胜的警报???有什么建议么 ?

4

4 回答 4

1

对于您的第一个问题,如果您想知道是否所有内容都被隐藏,您可以迭代和中断:

BOOL allHidden = YES;

for (UIButton *button in btnsArr) {
    if (!button.hidden) {
        allHidden = NO;
        break;
    }
}

NSLog(@"All hidden: %@", (allHidden ? @"YES" : @"NO"));
于 2013-07-08T11:08:14.710 回答
1

尝试使用这个

for(int i = 0; i < [btnsArr count] i++)
{

    UIButton *btn = (UIButton *)[btnsArr objectAtIndex:i];
    if(btn.hidden)
    {
                //here btn is hidden ,
    }else
    {
                 //here btn is  not hidden
    }
}
于 2013-07-08T11:08:35.067 回答
0
for(int i=0;i<btnsArr.count;i++)
{
  UIButton *btn = (UIButton *)[btnsArr objectAtIndex:i];
  if(btn.hidden)
  {
  }
  else
  {
  }
}
于 2013-07-08T11:07:50.537 回答
0

通过数组进行枚举以检查按钮的任何实例是否未被隐藏

__block BOOL buttonVisibile = NO;

[btnsArr enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
    UIButton* btn = (UIButton*)obj;
            if(![btn isHidden]){
            //Do something
             buttonVisible = YES;
            }
}];

if(buttonVisible){
   //All of them are not hidden.
}
于 2013-07-08T11:09:48.057 回答