清洁随机图像的屏幕

时间:2012-07-08 07:11:41

标签: objective-c image random

这是我第一次发帖,首先你要了解两件事,我非常喜欢Objective-c而且英语不是我的母语,所以如果你不太懂,请问:)

好的,我正在为我的孩子制作一个iPad应用程序,所以它包含随机声音和每个点击的随机图像。但经过一些点击之后,屏幕上充满了图像,所以我想知道如何在X点击后“清理”屏幕。

这里有一些代码:

- (void)oneFingerOneTap{


int randomNumber = arc4random() % 9 + 1;
int randX = arc4random() % 768 + 1;
int randY = arc4random() % 1004 + 1;

NSString *fileName = @"Sound";
NSString *ext = @".caf";
NSString *randString = [NSString stringWithFormat:@"%d", randomNumber];
NSString *completeSound = [NSString stringWithFormat:@"/%@%@%@", fileName, randString, ext];

NSString *path = [NSString stringWithFormat:@"%@%@", [[NSBundle mainBundle] resourcePath], completeSound];

SystemSoundID soundID;
NSURL *filePath = [NSURL fileURLWithPath:path isDirectory:NO];


AudioServicesCreateSystemSoundID((__bridge CFURLRef)filePath, &soundID);

AudioServicesPlaySystemSound(soundID);


self.imgView = [[UIImageView alloc] initWithFrame:CGRectMake(randX, randY, 60, 60)];
self.imgView.image = [UIImage imageNamed:@"background.jpg"];
[self.view addSubview:self.imgView];




NSLog(@" %d", randX);

count++;
} 

所以我创建一个全局int(count)来了解已经完成了多少次点击。

PS。我知道当时的图像不是随机的,现在没关系。

同样,如何删除之前完成的所有图像?

我尝试使用self.imgView.hidden = TRUE;,但它只隐藏了最后一张图片。

1 个答案:

答案 0 :(得分:0)

试试这段代码

 for (UIView *subVw in self.view.subviews) {
    if ([subVw isKindOfClass:[UIImageView class]]) {
        [subVw removeFromSuperview];
    }
}