全局定义UINavigationContoller--By秀清

//
//  NavController.m
//
//  Created by Joe Zhang on 15/5/23.
//  Copyright (c) 2015年 张秀清. All rights reserved.
//

#import "NavController.h"
#import "UIBarButtonItem+Joe.h"
#import "Prefix.h"

@interface NavController ()

@end

@implementation NavController

- (void)viewDidLoad {
    [super viewDidLoad];

    [self setUINavigationBar];

    [self setUIBarBuutonItem];
}

-(void)setUINavigationBar{

    if (!iOS7) {
        //Appearance  全局设置UINavigationBar
        UINavigationBar *bar = [UINavigationBar appearance];
        [bar setBackgroundImage:[UIImage imageNamed:@"navigationbar_background"] forBarMetrics:UIBarMetricsDefault];
    }
}

-(void)setUIBarBuutonItem{
    //全局设置UIBarButtonItem
    UIBarButtonItem *item = [UIBarButtonItem appearance];

    NSShadow *shadow = [[NSShadow alloc]init];
    shadow.shadowOffset = CGSizeMake(0, 0);
    [item setTitleTextAttributes:@{
                                   NSFontAttributeName : [UIFont systemFontOfSize:15],
                                   NSForegroundColorAttributeName : [UIColor orangeColor],
                                   NSShadowAttributeName : shadow

                                   } forState:UIControlStateNormal];
}
//重写Push方法
-(void)pushViewController:(UIViewController *)viewController animated:(BOOL)animated{

    if (self.viewControllers.count>0) {//如果栈底的控制器个数大于0(tabbar4个nav之后的控制器)

        viewController.hidesBottomBarWhenPushed = YES;//隐藏底部tabbar

        viewController.navigationItem.leftBarButtonItem = [UIBarButtonItem itemWithImageName:@"navigationbar_back" highLightImageName:@"navigationbar_back_highlighted" target:self action:@selector(back)];

        viewController.navigationItem.rightBarButtonItem = [UIBarButtonItem itemWithImageName:@"navigationbar_more" highLightImageName:@"navigationbar_more_highlighted" target:self action:@selector(pop)];

    }
    [super pushViewController:viewController animated:YES];
}

-(void)back{

    [self popViewControllerAnimated:YES];
}

-(void)pop{

    [self popToRootViewControllerAnimated:YES];
}

@end
时间: 2024-08-28 13:28:42

全局定义UINavigationContoller--By秀清的相关文章

头文件里不要有全局定义

//由于一个头文件可能会被多次包含,所以有全局定义的情况下,在链接会出现重定义错误 //全局定义不应该放在头文件里,应该放入其相应的实现文件中. //如果一个头文件里的全局定义被多个cpp文件所使用,则只有一个文件可以include这个头文件,其他只能是extern这些全局声明. #ifndef LOCK_H #define LOCK_H void lock(); void unlock(); void quanju(){};/////////小心 int quanjubianliang;///

NSDate分类,把系统返回的时间与现在进行比较---秀清

// // NSDate+Joe.h // WeiBo // // Created by 张秀清 on 15/9/17. // Copyright (c) 2015年 张秀清. All rights reserved. // #import <Foundation/Foundation.h> @interface NSDate (Joe) /** * 是否是今天 */ -(BOOL)isToday; /** * 是否是这个月 */ -(BOOL)isThisYear; /** * 是否是今年

归档和解档---秀清

// // AccountTool.h // // Created by Joe Zhang on 15/5/23. // Copyright (c) 2015年 张秀清. All rights reserved. // #import <Foundation/Foundation.h> #import "Account.h" @interface AccountTool : NSObject //存储账号 +(void)save:(Account *)account; /

IOS开发之----常用函数和常数--秀清

介绍一下Objective-c常用的函数,常数变量 算术函数 [算术函数] 函数名 说明 int rand() 随机数生成.(例)srand(time(nil)); //随机数初期化int val = rand()P; //0-49之间的随机数 int abs(int a) 整数的绝对值(例)int val = abs(-8); →8※浮点数的时候用fabs. double fabs(double a) 浮点数的绝对值(例)double val = fabs(-12.345); →12.345※

计算两点之间的距离,两点之间的斜率(角度)--秀清

// // ViewController.m // 勾股定理 // // Created by 张秀清 on 15/6/8. // Copyright (c) 2015年 张秀清. All rights reserved. // #import "ViewController.h" //角度转弧度 #define degreesToradian(x) (M_PI*x/180.0) //弧度转角度 #define radiansToDegrees(x) (180.0*x/M_PI) @i

javascript 从定义到执行,你应该知道的那些事

javascript从定义到执行,JS引擎在实现层做了很多初始化工作,因此在学习JS引擎工作机制之前,我们需要引入几个相关的概念:执行环境栈.全局对象.执行环境.变量对象.活动对象.作用域和作用域链等,这些概念正是JS引擎工作的核心组件.这篇文章的目的是孤立的为你讲解每一个概念,而是通过一个简单的demo来展开分析,全局讲解JS引擎从定义到执行的每一个细节,以及这些概念在其中所扮演的角色. var x = 1; //定义一个全局变量 x function A(y){ var x = 2; //定

C#全局作用符::

比如说你在全局定义了一个变量str,然后在函数里面又定义了这个str名字的变量的,这个时候你要是在函数里面直接写str,那么就是访问的函数内部的变量的.无法访问外部变量的.这是正常的现象的.但是如果你想访问外部变量的话,那么就可以使用::str来访问的.就不会是访问内部变量了. using gg = kk; namespace DXApplication2 { public partial class Form_Button : Form { public Form_Button() { Ini

javascript从定义到执行 js引擎 闭包

javascript从定义到执行,JS引擎在实现层做了很多初始化工作,因此在学习JS引擎工作机制之前,我们需要引入几个相关的概念:执行环境 栈.全局对象.执行环境.变量对象.活动对象.作用域和作用域链等,这些概念正是JS引擎工作的核心组件.这篇文章的目的是孤立的为你讲解每一个概念,而 是通过一个简单的demo来展开分析,全局讲解JS引擎从定义到执行的每一个细节,以及这些概念在其中所扮演的角色. var x = 1;  //定义一个全局变量 x function A(y){ var x = 2; 

C++学了这么多年,你也许不知道为什么类定义要放在.h文件,类实现放在cpp文件。它们如何关联?

原文  http://blog.csdn.net/ithzhang/article/details/8119286 主题 C++ C++学了这么多年你知道为什么定义类时,类的定义放在.h文件中,而类的实现放在cpp文件中.它们为什么能够关联到一起呢?你知道什么东西可以放在.h文件中,什么不能.什么东西又可以放在cpp文件中.如果你忘记了或是压根就不明白,那么读过此文你会清晰无比!! 首先谈下 声明与定义的区别. 声明是将一个名称引入程序.定义提供了一个实体在程序中的唯一描述.声明和定义有时是同时