我试图通过点击一个按钮时单个UIImageView
中的一些图像循环。按下按钮后,图像必须消失0.1秒。 下面的代码:延迟加载UIImageView中的图像
int tapCount = 0;
UIImage *image0 = [UIImage imageNamed:@"0.jpg"];
UIImage *image1 = [UIImage imageNamed:@"1.jpg"];
UIImage *image2 = [UIImage imageNamed:@"2.jpg"];
imagesArray = [[NSArray alloc] initWithObjects:image0, image1, image2, nil];
-(IBAction)backgroundButton:(id)sender{
self.myImageView.image = [imagesArray objectAtIndex:tapCount%3];
tapCount++;
[self performSelector:@selector(eraseImage) withObject:self afterDelay:0.1];
}
-(void)eraseImage{
self.myImageView.image = nil;
}
的问题是,图像不会出现,直到我已经完成了一个完整的环(在第4 TAP)。 我猜想,我必须初始化UIImageView
中的图像,因为它需要一定的时间才会出现在敲击和图像之间,并且因为它在0.1秒后消失......它根本不会显示。
我试图加载它们里面viewDidLoad
这样的:
for(int i = 0; i<[imagesArray count]; i++){
self.myImageView.image = [imagesArray objectAtIndex : i];
}
只是到最后的形象工程加载(在这种情况下,图像2)。
我是否应该在不同的UIImageView
之间循环,而不是在单个UIImageView
内循环使用不同的UIImage
?
任何其他提示?
什么是图像,它们有多大?创建一个'UIImage'实际上并不会加载图像数据(您需要将其渲染到上下文中才能发生)。 – Wain
图像为1MB到3MB之间的jpg。 1024x768,因为必须在iPad中全屏显示。 我怎样才能加载它们? – guardabrazo
idk如果这是你如何拥有你的代码,但我不应该在它的前面;它应该是[imagesArray objectAtIndex:i]; – user2277872