博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
核心动画的使用 - 启动动画
阅读量:5996 次
发布时间:2019-06-20

本文共 3097 字,大约阅读时间需要 10 分钟。

1、启动动画

  • 1.1 CHWelcomeView.h

    @interface CHWelcomeView : UIView/// 创建欢迎视图+ (instancetype)weicomeView;@end
  • 1.2 CHWelcomeView.m

    @interface CHWelcomeView ()@property (weak, nonatomic) IBOutlet UIImageView *backView;@property (weak, nonatomic) IBOutlet UIImageView *sloganView;@property (weak, nonatomic) IBOutlet UIImageView *iconView;@property (weak, nonatomic) IBOutlet UILabel *textView;@end@implementation CHWelcomeView/// 创建欢迎视图+ (instancetype)weicomeView{    return [[NSBundle mainBundle] loadNibNamed:NSStringFromClass(self) owner:nil options:nil].firstObject;}/// 初始化- (void)awakeFromNib {    [super awakeFromNib];    self.backView.image = [UIImage imageNamed:@"ad_background"];    self.sloganView.image = [UIImage imageNamed:@"compose_slogan"];    self.iconView.image = [UIImage imageNamed:@"QianChia0123"];    self.textView.text = @"欢迎回来";}/// 已经添加到父视图上- (void)didMoveToSuperview {    [super didMoveToSuperview];    // 设置头像圆角    self.iconView.layer.cornerRadius = 50;    self.iconView.layer.masksToBounds = YES;    // 头像下移    self.iconView.transform = CGAffineTransformMakeTranslation(0, 50);    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{        [UIView animateWithDuration:1.0 animations:^{            // 文字图片慢慢消失            self.sloganView.alpha = 0;        } completion:^(BOOL finished) {            // 显示头像            self.iconView.hidden = NO;            [UIView animateWithDuration:1.0 delay:0 usingSpringWithDamping:0.3            initialSpringVelocity:0            options:UIViewAnimationOptionCurveLinear            animations:^{                // 头像往上移动的动画,弹簧效果                self.iconView.transform = CGAffineTransformIdentity;            } completion:^(BOOL finished) {                self.textView.alpha = 0;                self.textView.hidden = NO;                // 文字慢慢显示                [UIView animateWithDuration:0.5 animations:^{                    // 欢迎回来 的文字慢慢显示                    self.textView.alpha = 1;                } completion:^(BOOL finished) {                    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.5 * NSEC_PER_SEC)),                    dispatch_get_main_queue(), ^{                        // 移除                        [self removeFromSuperview];                    });                }];            }];        }];    });}@end
  • 1.3 AppDelegate.m

    #import "CHWelcomeView.h"- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    // 创建窗口    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];    UIStoryboard *stroyboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];    UIViewController *vc = [stroyboard instantiateInitialViewController];    self.window.rootViewController = vc;    [self.window makeKeyAndVisible];    // 显示欢迎界面    CHWelcomeView *welcomeV = [CHWelcomeView weicomeView];    welcomeV.frame = self.window.bounds;                // 注意:一定要给界面设置 Frame    [self.window addSubview:welcomeV];    return YES;}
  • 1.4 效果

    • 1213778-20180815195053081-1574812104.png ------ 1213778-20180815195058395-116029965.gif

转载于:https://www.cnblogs.com/CH520/p/9483605.html

你可能感兴趣的文章
自定义SOAP消息头
查看>>
hive0.13 cli启动缓慢问题
查看>>
SQL Server 2014新功能 -- 缓冲池扩展(Buffer Pool Extension)
查看>>
人生如梦游戏间,RPG游戏开源开发讲座(JAVA篇)[5]——一树双花
查看>>
网关负载均衡协议(GLBP)原理与实验
查看>>
第十一章 Shell常用命令与工具(一)
查看>>
Windows 7简体中文语言试用体验
查看>>
Win2008 R2 RemoteApp深度体验之五,远程桌面Web访问
查看>>
Hyper-V的虚拟机创建和还原虚拟机快照
查看>>
PowerPC VxWorks BSP分析(3.2)——POWERQUICC硬件
查看>>
桥牌笔记:失墩合二为一
查看>>
cocos2d-x 2.1 Win32+Android开发中的sqlite数据库加密技术探讨
查看>>
当AD服务器置于防火墙内时,所需开放的端口
查看>>
Citrix VDI实战攻略之一:架构及组件
查看>>
基于Tomcat5.0和Axis2开发Web Service应用实例
查看>>
SQL Server 2005系列教学(2) SQL 服务及创建数据库
查看>>
Cocos2d-x编程中CCRemoveSelf与CCCallFunc系列函数不能一起使用
查看>>
VISIO2003基本形状
查看>>
第4章 配置集线器服务
查看>>
增强Dom4j--让XML处理更容易
查看>>