How do I use an animated .gif in my iPhone application?

后端 未结 5 1299
有刺的猬
有刺的猬 2020-12-12 16:45

I have an animated gif file that I want to use in my iPhone application, but the animation doesn\'t work. Does anybody know how to fix it?

相关标签:
5条回答
  • 2020-12-12 16:57

    One other option is to decode the gif in your application, and then "frame serve" it to a OpenGL object. This way is less likely to run out of memory for large gifs.

    0 讨论(0)
  • 2020-12-12 17:05

    UIWebView does not properly display all GIF content. You need to use a UIImageView, but the iPhone OS does not support animated GIFS and only displays the first frame.

    So you need to extract all of the other frames first.

    Crude example code here: http://pliep.nl/blog/2009/04/iphone_developer_decoding_an_animated_gif_image_in_objc

    0 讨论(0)
  • 2020-12-12 17:11

    If you have a serie of images you want to animate you can easily do it with 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];
    

    I found this easier than trying to use UIWebView.

    0 讨论(0)
  • 2020-12-12 17:12

    This can be achieved by this piece of code:

    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.
    

    I know its an old thread..but may be helpful for someone..:)

    0 讨论(0)
  • 2020-12-12 17:19

    You can use source at http://blog.stijnspijker.nl/2009/07/animated-and-transparent-gifs-for-iphone-made-easy/ It has a GIF decoder that you can use directly to get solution. I successfully used it. But it have some problems with transparency.

    0 讨论(0)
提交回复
热议问题