zoukankan      html  css  js  c++  java
  • IOS开发中设置导航栏主题

    /**
     *  系统在第一次使用这个类的时候调用(1个类只会调用一次)
     */
    + (void)initialize
    {
        // 设置导航栏主题
        UINavigationBar *navBar = [UINavigationBar appearance];
        // 设置背景图片
        NSString *bgName = nil;
        if (iOS7) { // 至少是iOS 7.0
            bgName = @"NavBar64";
        } else { // 非iOS7
            bgName = @"NavBar";
        }
        [navBar setBackgroundImage:[UIImage imageNamed:bgName] forBarMetrics:UIBarMetricsDefault];
        
        // 设置标题文字颜色
        NSMutableDictionary *attrs = [NSMutableDictionary dictionary];
        attrs[NSForegroundColorAttributeName] = [UIColor whiteColor];
        attrs[NSFontAttributeName] = [UIFont systemFontOfSize:16];
        [navBar setTitleTextAttributes:attrs];
        
        //设置BarButtonItem的主题
        UIBarButtonItem *item=[UIBarButtonItem appearance];
        //设置文字颜色
        NSMutableDictionary *itemAttrs=[NSMutableDictionary dictionary];
        itemAttrs[NSFontAttributeName]=[UIFont systemFontOfSize:14];
        itemAttrs[NSForegroundColorAttributeName]=[UIColor whiteColor];
        [item setTitleTextAttributes:itemAttrs forState:UIControlStateNormal];
        if (!iOS7) {
            //设置按钮背景
            
            [item setBackgroundImage:[UIImage imageNamed:@"NavButton"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
            [item setBackgroundImage:[UIImage imageNamed:@"NavButtonPressed"] forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];
            
            //设置返回按钮的背景
            [item setBackButtonBackgroundImage:[UIImage imageNamed:@"NavButton"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
            [item setBackButtonBackgroundImage:[UIImage imageNamed:@"NavButtonPressed"] forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];
    
        }
        else{
            navBar.tintColor=[UIColor whiteColor];
        }
       }

    IOS开发技术交流QQ群:491355147 欢迎加入一起讨论技术哦 

  • 相关阅读:
    Zboot权限后台管理系统开源啦
    java中的强引用,软引用,弱引用,虚引用
    基于Hexo搭建个人博客
    拾遗Timer定时器
    手把手教你使用jmeter接口测试
    Vue 常见的面试题
    vue脚手架环境搭建
    vue过滤器
    基础面试题总结1
    Promise 库 lie.js 源码解读
  • 原文地址:https://www.cnblogs.com/fxiaoquan/p/4570540.html
Copyright © 2011-2022 走看看