在 iOS App 中,經常會看到一些動畫,比如:音樂播放器App, 那個上下跳動的波浪式的圖標。 這個動畫在iOS中是如何實現的呢?
如果你留意的話,會發現這些動畫都是Gif 文件。 我們知道,GIF本身就是一個動畫,只要能播這個GIF文件就可以了。
iPhone SDK提供了多種動畫手段,UIView、UIImageView和CALayer都支持動畫。但如何處理常見的gif動畫呢?UIWebView提供了答案,代碼如下:
使用UIWebView播放
[objc] view plaincopy
- // 設定位置和大小
- CGRect frame = CGRectMake(50,50,0,0);
- frame.size = [UIImage imageNamed:@"play.gif"].size;
- // 讀取gif圖片數據
- NSData *gif = [NSData dataWithContentsOfFile: [[NSBundle mainBundle] pathForResource:@"play" ofType:@"gif"]];
- // view生成
- UIWebView *webView = [[UIWebView alloc] initWithFrame:frame];
- webView.userInteractionEnabled = NO;//用戶不可交互
- [webView loadData:gif MIMEType:@"image/gif" textEncodingName:nil baseURL:nil];
- [self.view addSubview:webView];