2009-03-19 10 views

Respuesta

28

Si usted tiene una serie de imágenes que desea animar se puede hacer fácilmente con 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]; 

me encontré con este fácil que tratar de utilizar UIWebView.

+15

Esta es la solución correcta para mostrar la animación de imágenes. Pero esta no es la respuesta correcta a la pregunta. – Satyam

1

Otra opción es para decodificar el gif en su aplicación, y luego "marco servir" a un objeto de OpenGL. De esta manera es menos probable que se quede sin memoria para grandes gifs.

+1

¿Tiene un ejemplo de cómo hacerlo? –

3

Esto se puede lograr mediante esta pieza de código:

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. 

Sé que es un viejo thread..but puede ser útil para alguien .. :)