zoukankan      html  css  js  c++  java
  • iOS 同navigationController下 不同vc不同颜色导航栏的push/pop 渐变过渡

    苦于设计师老喜欢在一个app里设置两种不同颜色的vc 风格.

    navigationBar的颜色还能通过把navigationBar的背景设置为透明再在vc中搭颜色

    但navigationBar中的按钮,标题等  都无法很好地独立控制

    除非把navigationBar加在vc中,让vc完全独立控制

    这又失去了iOS 过渡动画的一些特性,看着不爽

    比较理想的是微信的效果,能在push/pop动画中渐变修改不同状态下的颜色来达到不同风格效果

    效果如下

    注意看那个返回按钮的箭头颜色

    于是...

    需每个vc独立控制当前显示navigationBar的颜色配置,可在每个viewWillAppear中使用

        [self.transitionCoordinator animateAlongsideTransition:^(id<UIViewControllerTransitionCoordinatorContext>  _Nonnull context) {
            self.navigationController.navigationBar.tintColor = [UIColor blueColor]; //控制按钮颜色
            self.navigationController.navigationBar.barTintColor = [UIColor orangeColor]; //控制导航栏背景色 按需设置
        } completion:^(id<UIViewControllerTransitionCoordinatorContext>  _Nonnull context) {
        }];
  • 相关阅读:
    微信小程序之base64转为本地图片
    微信小程序之页面跳转方法
    一些收集的社区网址+学习网站、文档
    11-DOM介绍
    10-关于DOM的事件操作
    09-伪数组 arguments
    前端---css
    前端---html
    并发编程------网络IO模型、IO多路复用
    并发编程------协程
  • 原文地址:https://www.cnblogs.com/n1ckyxu/p/12096058.html
Copyright © 2011-2022 走看看