美文网首页
iOS开发_启动页动画

iOS开发_启动页动画

作者: iOS_PM_WEB_尛鹏 | 来源:发表于2018-07-12 17:36 被阅读0次

【作者前言】:13年入圈,分享些本人工作中遇到的点点滴滴那些事儿,17年刚开始写博客,高手勿喷!以分享交流为主,欢迎各路豪杰点评改进!

1.应用场景:

很多时候我们需要利用启动页做一些动画处理,这里介绍一种简单的易于实现的过渡动画;

2.实现目标:

Attention:复杂的动画不是启动页能够处理的,而是以假乱真用启动页做第一帧衍生出其他的比较炫彩的动画,原理如此,实现很简单就不过多介绍了。
本篇主要讲述的是通过直接获取启动页来设置一些简单过渡动画

3.代码说明:

/**传统的方式,需要根据各种机型的尺寸去处理不同的图片,
该方式在每每有新机型出现的时候,弊端就及其明显,
这里主要借鉴了Stack Overflow上的一篇文章
(http://stackoverflow.com/users/1320010/cherpak-evgeny),
通过获取LaunchImage来通配性的加上简易的过渡动画*/

//获取窗口尺寸
CGSize viewSize = self.window.bounds.size;
//默认应用为竖屏
//横屏请设置成 @"Landscape"
NSString *viewOrientation = @"Portrait";    
NSString *launchImageName = nil;
//获取LaunchImage的信息数组
NSArray *launchimagesArr = [[[NSBundle mainBundle] infoDictionary] valueForKey:@"UILaunchImages"];
//快速遍历包含启动页信息的数组
for (NSDictionary *dict in launchimagesArr)
{
//拿到启动页的图片尺寸大小
    CGSize imageSize = CGSizeFromString(dict[@"UILaunchImageSize"]);
    //图片尺寸与窗口尺寸一致并且方向关键信息也一致时
    if (CGSizeEqualToSize(imageSize, viewSize) && [viewOrientation isEqualToString:dict[@"UILaunchImageOrientation"]])
    {
//满足上述条件时,持有下此时的启动图片名称
        launchImageName = dict[@"UILaunchImageName"];
    }
}

//实例一个跟启动页一样的伪启动页launchView
UIImageView *launchView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:launchImageName];
launchView.frame = self.window.bounds;
launchView.contentMode = UIViewContentModeScaleAspectFill;
//将其加载Window上
[self.window addSubview:launchView];

//设置动画将伪启动页逐渐透明和移除,实现启动页渐渐消失的简易过渡动画
[UIView animateWithDuration:2.0f
                      delay:0.0f
                    options:UIViewAnimationOptionBeginFromCurrentState
                 animations:^{
                     //动画效果
                     launchView.alpha = 0.0f;
                     launchView.layer.transform = CATransform3DScale(CATransform3DIdentity, 1.2, 1.2, 1);
                     
                 }
                 completion:^(BOOL finished) {
                     //动画效果完成后,移除伪启动页
                     [launchView removeFromSuperview];
                 }];

相关文章

  • iOS开发_启动页动画

    【作者前言】:13年入圈,分享些本人工作中遇到的点点滴滴那些事儿,17年刚开始写博客,高手勿喷!以分享交流为主,欢...

  • iOS适配启动页

    iOS适配启动页 iOS适配启动页

  • iOS 延迟启动页以及启动页动画

    1、单纯的延长启动页 2、启动页动画

  • iOS代码添加视图约束

    项目要做这样一个效果的启动页。 考虑到版本号是会不断变更的,因此采用动画效果启动页,让版本号动态加载iOS启动页动...

  • iOS 启动页带动画

    APP在启动的时候有的是静态图有的是动图,那怎么设置动图呢?本文主要介绍从网络上获取动图,这样可以只更改服务器上的...

  • iOS启动页动画效果

    最近项目中要在启动页增加版本号,因为版本号是不断的改变,所以要动态实现把它加到启动页上;在XCode上面配置的La...

  • iOS开发——登录页面动画、转场动画

    iOS开发——登录页面动画、转场动画 iOS开发——登录页面动画、转场动画

  • 常见meta和link标签

    页面基本设置 http 信息设置 搜索引擎相关设置 移动端开发 移动开发基本设置 iOS 图标 iOS启动画面 其...

  • Flutter 启动页

    启动页 IOS启动页,在ios/Runner/Assets.xcassets/LaunchImage.images...

  • [iOS]Swift-启动页动画

    从开发者角度讲app启动当然越快越好,但是有时候总有些奇葩需求。比如,让启动页故意延时、在启动页上加个动画等等。下...

网友评论

      本文标题:iOS开发_启动页动画

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