zoukankan      html  css  js  c++  java
  • ios

    UITabBarController下面常常需要为多个ViewController设置导航栏样式,总结了一下遇到过的为UINavigationBar添加背景图片的几种简单思路
    以设置背景图片为例:
    第一种,直接在视图里面单独设置每个视图的UINavigationBar,适合每个页面需要不同的导航栏样式。
    [self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"nav_bg_all-64"] forBarMetrics:UIBarMetricsDefault];
    第二种:为各个页面建立一个共同的BaseNavigationController,设置好背景图片。其他视图控制器将它继承下来,这也可以达到一个整体设置效果。
    [self.navigationBar setBackgroundImage:[UIImage imageNamed:@"nav_bg_all-64"] forBarMetrics:UIBarMetricsDefault];
    第三种,在TabBarController里面写一个方法,通过遍历所有视图的导航栏来设置。记得调用这个方法
    - (void) createNavigationBar
    {//遍历所有视图的导航栏
    for (UINavigationController *navi in self.viewControllers)
    {
    [navi.navigationBar setBackgroundImage:[UIImage imageNamed:@"nav_bg_all-64"] forBarMetrics:UIBarMetricsDefault];
    }
    } 第四种:直接更改UINavigationBar的默认样式,这种方式和前一种的区别在于前者只是改变五个视图的导航栏,而后者是作用在UINavigationBar上。
    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"nav_bg_all-64"] forBarMetrics:UIBarMetricsDefault];
  • 相关阅读:
    debug和release转载
    坐标系与基本图元(8)
    坐标系与基本图元(7)
    坐标系与基本图元(5)
    坐标系与基本图元(6)
    坐标系与基本图元(4)
    坐标系与基本图元(3)
    坐标系与基本图元(2)
    BZOJ 1090
    Xor
  • 原文地址:https://www.cnblogs.com/shenlaiyaoshi/p/8806642.html
Copyright © 2011-2022 走看看