在我的项目中,在一个视图中,我希望将所有视图禁用除一个按钮,所以我正在使用
[self.view setUserInteractionEnabled:NO];
由于我有很多组件,因此很难启用和禁用每个组件,因此我正在使用它。
但我想启用一个按钮,有很多按钮。
答案 0 :(得分:3)
根据XLC你可以这样做
for (UIView *view in [self.view subviews])
{
if (view.tag==101)// set your button tag that you don't wont disable
[ view setUserInteractionEnabled:YES];
else
[ view setUserInteractionEnabled:NO];
}
答案 1 :(得分:1)
试试这个:
for (UIView *viewButton in [self.view subviews])
{
if ([viewButton isKindOfClass:[UIButton class]]) //In case you want check only for the buttons.
{
if (viewButton.tag==1)//Make sure that you have already set the tag=1 for the button,which you don't want to disable
{
[viewButton setUserInteractionEnabled:YES];
}
else
{
[viewButton setUserInteractionEnabled:NO];
}
}
}
答案 2 :(得分:1)
尝试这个希望这可以帮助你
for (id subview in [self.view subviews]) { if ([subview isKindOfClass:[UIButton class]]&&[subview tag]==1) { [subview setUserInteractionEnabled:YES]; } else { [subview setUserInteractionEnabled:NO]; } }
答案 3 :(得分:0)
如果您使用[self.view setUserInteractionEnabled:NO];
然后您的整个视图将被禁用,包括子视图。
因此,最好循环所有子视图,并根据需要禁用和启用。