我有在 uiview 中创建、添加和标记取消按钮的代码,该 uiview 本身位于 uiscrollview 中。在某个时刻,我尝试更改(背景颜色和图像)一些带有某些标签的取消按钮。问题是如果我选择第一个带有标签 0 的按钮,for 循环会因为 uiscrollview 或 uiview 没有该方法可用而导致图像更改。但我试图只针对视图中的取消按钮(全部同步)。如果我选择任何其他按钮,它会按预期工作。我可以将标签从 0 偏移到 1,但我想知道为什么我的 for 循环不起作用。
for (int i=0; i<[devicesArray count]; i++) {
NSLog(@"red %i", i);
for (UIView *subview in [uiv_ButtonsView subviews]) {
if([subview isKindOfClass:[UIButton class]]) {
int number = [[devicesArray objectAtIndex:i] intValue];
subview.alpha=1.0;
[[subview viewWithTag:number] setBackgroundColor:[UIColor redColor]];
UIButton *btttn = (UIButton *)[subview viewWithTag:number];
[btttn setBackgroundImage:nil forState:UIControlStateNormal];
}
}
}
谢谢 - 这是现在工作的代码:
for (int i=0; i<[devicesArray count]; i++) {
int number = [[devicesArray objectAtIndex:i] intValue];
[[uiv_Quilt viewWithTag:number] setBackgroundColor:[UIColor redColor]];
[[uiv_Quilt viewWithTag:number] setBackgroundImage:nil forState:UIControlStateNormal];
}