//
//  KWMSplashView.m
//  iCemarose
//
//  Created by HouWeiBin on 16/9/5.
//  Copyright © 2016年 kollway. All rights reserved.
//

#import "KWMSplashView.h"
#import <QuartzCore/QuartzCore.h>


@implementation KWMSplashView

- (id)init{
    if (self=[super init]){
        [self addView];
    }
    return self;
}

- (id)initWithCoder:(NSCoder *)aDecoder {
    self = [super initWithCoder:aDecoder];
    if (self) {
        [self addView];
    }
    return self;
}

-(instancetype)initWithFrame:(CGRect)frame{
    if (self =[super initWithFrame:frame]) {
        [self addView];
    }
    return self;
}

-(void)awakeFromNib{
    [super awakeFromNib];
    [self addView];
}

-(void) addView{
    [[NSBundle mainBundle] loadNibNamed:NSStringFromClass([self class])
                                  owner:self
                                options:nil];
    
    self.vView.frame = CGRectMake(0, 0, self.frame.size.width, self.frame.size.height);
    [self addSubview:self.vView];
    [self initView];
}


-(void)initView{
    [self.vLoading initLoadingView];
    [self.vLoading startAnimation];
//    // 对Y轴进行旋转(指定Z轴的话,就和UIView的动画一样绕中心旋转)
//    CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
//    
//    // 设定动画选项
//    animation.duration = 0.75; // 持续时间
//    animation.repeatCount = CGFLOAT_MAX; // 重复次数
//    
//    // 设定旋转角度
//    animation.fromValue = [NSNumber numberWithFloat:0.0]; // 起始角度
//    animation.toValue = [NSNumber numberWithFloat:2 * M_PI]; // 终止角度
//
//
//    // 添加动画
//    [self.ivLoading.layer addAnimation:animation forKey:@"animateTransform"];
    
}


-(void)hide{
    
    // 透明度动画
    CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"opacity"];
    
    // 设定动画选项
    animation.duration = 1; // 持续时间
    animation.repeatCount = 1; // 重复次数
    
    animation.fillMode = kCAFillModeForwards;
    
    animation.removedOnCompletion = NO;
    
    [animation setValue:@"MyHideAnim" forKey:@"animName"];

    
    animation.fromValue = [NSNumber numberWithFloat:1.0]; // 起始透明度
    animation.toValue = [NSNumber numberWithFloat:0]; // 终止透明度
    animation.delegate = self;
    // 添加动画
    [self.vContent.layer addAnimation:animation forKey:@"MyHideAnim"];
}


-(void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag{
    if([[anim valueForKey:@"animName"]isEqualToString:@"MyHideAnim"]){
        self.hidden = YES;
        [self.vContent.layer removeAllAnimations];
    }
}


@end