我有12张图片,我想检查它们是否全部隐形。因此,我必须检查它们是隐藏还是只是没有内容。而不是检查每个人是否被隐藏或如果它没有内容我决定加上布尔值的所有值
例如
[__ isHidden]
将返回1或0这是一个数字,因此我们可以在数学方程式中使用它!
然后取出那些布尔的总和并检查它们是否大于或等于12,这意味着至少有12张照片被隐藏,没有内容(*没有照片将是隐藏且没有内容)
以下是条件陈述:
if (((drawImage12.image == nil) + (drawImage11.image == nil) + (drawImage10.image == nil) + (drawImage9.image == nil) + (drawImage8.image == nil) + (drawImage7.image == nil) + (drawImage6.image == nil) + (drawImage5.image == nil) + (drawImage4.image == nil) + (drawImage3.image == nil) + (drawImage2.image == nil) + (drawImage1.image == nil) + ([drawImage12 isHidden]) + ([drawImage11 isHidden]) + ([drawImage10 isHidden]) + ([drawImage9 isHidden]) + ([drawImage8 isHidden]) + ([drawImage7 isHidden]) + ([drawImage6 isHidden]) + ([drawImage5 isHidden]) + ([drawImage4 isHidden]) + ([drawImage3 isHidden]) + ([drawImage2 isHidden]) + ([drawImage1 isHidden])) >= 12) {
//do stuff here
}
我的问题是:是否有更简单的方式来编写类似RegEx的工作,可能使用对象的tag
属性?
喜欢:(这不是真正的代码,只是一个例子)
if (((drawImage[1-12].image == nil) + (drawImage[1-12].hidden == YES)) >= 12) {
翻译成英文就像“如果所有12张图片都是空白或隐藏”
答案 0 :(得分:1)
它不会短得多,但也许你更喜欢这个:
NSArray *drawImages = [NSArray arrayWithObjects:drawImage12, drawImage11, drawImage10, etc, nil];
bool thereIsAProblem = NO;
for (UIImage *drawImage drawImages) {
if (!drawImage.image || drawImage.hidden) {
thereIsAProblem = true;
break;
}
}
if (!thereIsAProblem) {
//do stuff here
}
如果您希望下载累加值路线,您可以随时执行以下操作:
for (UIImage *drawImage drawImages) {
if (!drawImage.image || drawImage.hidden) {
someVariable += 1;
}
}
if (someVariable == 12) {
//do stuff
}
注意:以上代码未经过测试