美文网首页iOS酷玩技术分享iOS Developer程序员
iOS开发笔记——动态启动图的实现

iOS开发笔记——动态启动图的实现

作者: 无夜之星辰 | 来源:发表于2016-08-01 14:17 被阅读3006次
A Pink—郑恩地.jpg
实现原理:在应用启动的时候,它会先执行AppDelegate.m中的
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions方法,这个方法执行完之后,才会进入视图。所以,我们只需在进入视图之前呈现相关的动画就OK了。

例子:运行程序后,启动图慢慢变大,然后消失,最终呈现主页面。


代码:
`- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.

// window的常规设置
self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
self.window.backgroundColor = [UIColor whiteColor];
self.window.rootViewController = [[ViewController alloc]init];
[self.window makeKeyAndVisible];

// 在window上放一个imageView
UIImageView *imageView = [[UIImageView alloc]initWithFrame:[UIScreen mainScreen].bounds];
imageView.image = [UIImage imageNamed:@"before.jpg"];
[self.window addSubview:imageView];

// 执行动画
[UIView animateWithDuration:2 animations:^{
    // 两秒内图片变大为原来的1.3倍
    imageView.transform = CGAffineTransformMakeScale(1.3,1.3);
} completion:^(BOOL finished) {
    // 动画结束,移除imageView,呈现主界面
    [imageView removeFromSuperview];
}];

return YES;

}
`


总结:总体来说,实现起来还是很简单的,并且你可以根据自己的需求自定义各种动画,但是,用代码实现的动态启动图实际上只是个伪启动图,你仍需要设置启动图,不然程序开启的时候会有一段时间显示为空白,为了过度自然,可以将启动图设置为动态启动图的第一帧,这样从用户的角度来看就真的是动态启动图了。


demo地址:动态启动图

相关文章

网友评论

  • 翻滚的炒勺2013:这个代码没了
  • 谢谢生活:实用 不过怎么 “但是,用代码实现的动态启动图实际上只是个伪启动图,你仍需要设置启动图,不然程序开启的时候会有一段时间显示为空白,为了过度自然,可以将启动图设置为动态启动图的第一帧,这样从用户的角度来看就真的是动态启动图了” 怎么设置的啊 ? 还有你的Demo时空的??????????作为同批学员,你怎忍心??
    无夜之星辰:@谢谢生活 那张启动图是为了衔接动态图的
    无夜之星辰:@谢谢生活 不管怎样 你还是需要设置一张启动图
    无夜之星辰:@谢谢生活 求demo么?
  • 剁椒鱼尾:涨姿势了,简单实用
    无夜之星辰:@百川东到海 要的就是这种效果:grin:

本文标题:iOS开发笔记——动态启动图的实现

本文链接:https://www.haomeiwen.com/subject/uvmxsttx.html