zoukankan      html  css  js  c++  java
  • 状态栏动画切换效果

    状态栏动画切换效果

    效果

    源码

    https://github.com/YouXianMing/iOS-Project-Examples 中的 StatusBarAnimation

    //
    //  StatusBarValue.h
    //  StatusBarAnimation
    //
    //  Created by YouXianMing on 16/7/18.
    //  Copyright © 2016年 YouXianMing. All rights reserved.
    //
    
    #import <Foundation/Foundation.h>
    #import <UIKit/UIKit.h>
    
    @interface StatusBarValue : NSObject
    
    @property (nonatomic, weak) UIViewController *controller;
    
    /**
     *  Default value is UIStatusBarAnimationFade.
     */
    @property (nonatomic) UIStatusBarAnimation animationType;
    
    /**
     *  Default value is UIStatusBarStyleDefault.
     */
    @property (nonatomic) UIStatusBarStyle     style;
    
    /**
     *  Default value is NO.
     */
    @property (nonatomic) BOOL                 hidden;
    
    /**
     *  SetNeedsStatusBarAppearanceUpdate
     *
     *  @param animated Animated or not.
     *  @param duration Animation's duration.
     */
    - (void)statusBarAppearanceUpdateAnimated:(BOOL)animated duration:(NSTimeInterval)duration;
    
    #pragma mark - Constructor
    
    + (instancetype)statusBarValueWithController:(UIViewController *)controller;
    
    @end
    //
    //  StatusBarValue.m
    //  StatusBarAnimation
    //
    //  Created by YouXianMing on 16/7/18.
    //  Copyright © 2016年 YouXianMing. All rights reserved.
    //
    
    #import "StatusBarValue.h"
    
    @implementation StatusBarValue
    
    - (instancetype)init {
        
        if (self = [super init]) {
        
            self.animationType = UIStatusBarAnimationFade;
            self.style         = UIStatusBarStyleDefault;
            self.hidden        = NO;
        }
        
        return self;
    }
    
    - (void)statusBarAppearanceUpdateAnimated:(BOOL)animated duration:(NSTimeInterval)duration {
    
        if (self.controller) {
            
            if (animated) {
             
                [UIView animateWithDuration:duration > 0 ? duration : 0.35f animations:^{
                    
                    [self.controller setNeedsStatusBarAppearanceUpdate];
                }];
                
            } else {
            
                [self.controller setNeedsStatusBarAppearanceUpdate];
            }
        }
    }
    
    + (instancetype)statusBarValueWithController:(UIViewController *)controller {
    
        StatusBarValue *value = [[[self class] alloc] init];
        value.controller      = controller;
        
        return value;
    }
    
    @end
  • 相关阅读:
    梯度下降的矩阵分解公式推导
    再谈矩阵分解在推荐系统中的应用
    浅谈矩阵分解在推荐系统中的应用
    tomcat局域网内发布html
    通过JavaScript动态生成html控件
    html 复选框checkbox
    HTML <frameset>不同frame之间传值
    OpenLayers 案例一
    ubuntu java开发环境jdk安装
    如何成为Python高手
  • 原文地址:https://www.cnblogs.com/YouXianMing/p/5682770.html
Copyright © 2011-2022 走看看