需求:打开软件有个动画效果.
用到的框架:KKSequenceImageView-不错的GIF处理工具
思路:创建ImageView 加载GIF动画或者连续图片. --> 添加到Window.-->完成后清除.
步骤:
1.导入头文件
#import "KKSequenceImageView.h"
2.创建ImageView
@implementation AppDelegate
{
KKSequenceImageView* imageView;
}
3.开始初始化并设置参数
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
/** makeKeyAndVisible */
[self.window makeKeyAndVisible];
/** 初始化imageView */
imageView = [[KKSequenceImageView alloc] initWithFrame:CGRectMake(0, 0, self.window.screen.bounds.size.width,self.window.screen.bounds.size.height)];
NSMutableArray* images = [NSMutableArray array];
/** 加载图片 */
for (int i = 1; i <= 90; i++)
{
NSString *path = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"图层 %d",i] ofType:@"png"];
if (path.length) {
[images addObject:path];
}
}
/** 设置参数 */
imageView.imagePathss = images;
imageView.durationMS = images.count * 60;
imageView.repeatCount = 1;
imageView.delegate = self;
/** 添加到window */
[_window addSubview:imageView];
[imageView begin];
return YES;
}
4.代理方法消除imageView
#pragma mark -- 代理方法
- (void)sequenceImageDidPlayCompeletion:(KKSequenceImageView *)imageView
{
/** 运行完成--clean */
[imageView removeFromSuperview];
imageView = nil;
}
demo地址:GIF-demo
同时分享一个启动页动画框架:XHLaunchAd
有些人说为什么不直接加载GIF图片,这里我想说明一下,主要是当加载GIF图片的时候会导致CPU暴增而导致卡顿,还有找到优化的CPU的框架但是也会导致内存暴增,所以我在之前也试了很多框架和方法,就这个是我总结的比较好的方法了,大家如果不信的话,可以自己业余时间玩一下.