2009-03-19 36 views

Trả lời

28

Nếu bạn có một serie các hình ảnh mà bạn muốn để animate bạn có thể dễ dàng làm điều đó với UIImageView:

UIImage *blur5 = [UIImage imageNamed:@"blur5.png"]; 
UIImage *blur6 = [UIImage imageNamed:@"blur6.png"]; 

self.imageView.animationImages = [[NSArray alloc] initWithObjects:blur5, blur6, nil]; 
self.imageView.animationRepeatCount = 5; 
[self.imageView startAnimating]; 

Tôi thấy điều này dễ dàng hơn cố gắng sử dụng UIWebView.

+15

Đây là giải pháp đúng để hiển thị hình ảnh động của hình ảnh. Nhưng đây không phải là câu trả lời đúng cho câu hỏi. – Satyam

1

Một lựa chọn khác là để giải mã các gif trong ứng dụng của bạn, và sau đó "khung phục vụ" nó vào một đối tượng OpenGL. Bằng cách này ít có khả năng hết bộ nhớ cho các gif lớn.

+1

Bạn có ví dụ về cách thực hiện điều đó không? –

3

này có thể được thực hiện bằng đoạn mã này:

NSArray * imageArray = [[NSArray alloc] initWithObjects:[UIImage imageNamed:@"1.png"], [UIImage imageNamed:@"2.png"], nil]; //this will be the frames of animation images in sequence. 
ringImage = [[UIImageView alloc]initWithFrame:CGRectMake(100,200,600,600)]; 
ringImage.animationImages = imageArray; 
ringImage.animationDuration = 1.5;//this the animating speed which you can modify 
ringImage.contentMode = UIViewContentModeScaleAspectFill; 
[ringImage startAnimating];//this method actually does the work of animating your frames. 

Tôi biết nó một thread..but cũ có thể hữu ích cho một ai đó .. :)

Các vấn đề liên quan