• iOS StatusBar状态栏文字颜色更改


    1、将单个页面的StatusBar文字颜色改为白色,动态更改也可以在这里设置

    -(UIStatusBarStyle)preferredStatusBarStyle {
        return UIStatusBarStyleLightContent;
    }

    2、将所有页面的StatusBar文字颜色改为白色

      plist文件中View controller-based status bar appearance 设置为 NO

      在这种情况下,将单个页面的文字颜色更改为黑色

    -(void)viewWillAppear:(BOOL)animated {
        [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
    }
    
    -(void)viewWillDisappear:(BOOL)animated {
        [super viewWillDisappear:animated];
        [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
    }

     3、scrollView滑动更改StatusBar的文字颜色

    -(void)scrollViewDidScroll:(UIScrollView *)scrollView {
        _offsetY = scrollView.contentOffset.y;
        [self setNeedsStatusBarAppearanceUpdate];   //更新statusBar颜色,调用preferredStatusBarStyle
    }
    
    - (UIStatusBarStyle)preferredStatusBarStyle {
        if (_offsetY <= 136) {
            return UIStatusBarStyleLightContent;
        }
        return UIStatusBarStyleDefault;
    }

     4、当以UINavigationController来做容控制器,而且导航栏没有隐藏的情况下,

      preferredStatusBarStyle方法是无法改变StatusBar的颜色的,

      给UINavigationController写一个类扩展(Catogory)就可以使用上面方法了

    @implementation UINavigationController (UIKitAddition)
    
    -(UIViewController *)childViewControllerForStatusBarStyle {
        return self.visibleViewController;
    }
    
    -(UIViewController *)childViewControllerForStatusBarHidden {
        return self.visibleViewController;
    }
    
    @end

    5、以UINavigationController来做容控制器的时候不想写类扩展,也可以用以下方法

    //白色
    self.navigationController.navigationBar.barStyle = UIBarStyleBlack;
    //黑色
    self.navigationController.navigationBar.barStyle = UIBarStyleDefault;
  • 相关阅读:
    MySQL密码复杂度与密码过期策略介绍
    mysql 5.7安装密码校验插件validate_password
    MySQL安装控制插件(Connection-Control)--可有效的防止客户端暴力登录的风险(攻击)
    Liunx 无法杀掉reids进程解决方法
    Linux安装Kafka
    ZooKeeper安装及简单操作
    关于数组的算法题(一)
    集合框架方法(用于算法)
    Spring简答题(一)
    java选择题(三)
  • 原文地址:https://www.cnblogs.com/grein/p/8036222.html
Copyright © 2020-2023  润新知