全局定义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
全局定义UINavigationContoller--By秀清的更多相关文章
- react native项目直接全局定义横竖屏幕
这里指的是项目本身为横屏项目,直接全局设置,当然还有其他方法,使用react-native-orientation 全局定义如图: iOS android:
- QT5:先导篇 全局定义
一.简介 <QtGlobal>头文件包含了Qt类库的一些全局定义,包含基本数据类型 函数和宏 二.全局变量定义 <QtGlobal>定义的数据类型: Qt数据类型 ...
- vue初始化、数据处理、组件传参、路由传参、全局定义CSS与JS、组件生命周期
目录 项目初始化 组件数据局部化处理 子组件 父组件 路由逻辑跳转 案例 组件传参 父传子 子组件 父组件 子传父 子组件 父组件 组件的生命周期钩子 路由传参 第一种 配置:router/index ...
- Activity 跳转动画 全局定义
定义application 的 theme <application android:allowBackup="true" android:icon="@drawa ...
- NSDate分类,把系统返回的时间与现在进行比较---秀清
// // NSDate+Joe.h // WeiBo // // Created by 张秀清 on 15/9/17. // Copyright (c) 2015年 张秀清. All rights ...
- IOS开发之----常用函数和常数--秀清
介绍一下Objective-c常用的函数,常数变量 算术函数 [算术函数] 函数名 说明 int rand() 随机数生成.(例)srand(time(nil)); //随机数初期化int val = ...
- 手势仿QQ侧滑---秀清
// // SlideViewController.h // qqcehua // // Created by 张秀清 on 15/5/25. // Copyright (c) 2015年 张秀清. ...
- 随机生成器、thread(暂停)、清屏定义
1.生成一个随机生成器 Random a = new Random(); //()可以填写随机生成器的种子,这个种子只能是整数(int) ); //()内的数字代表小于5的非负整数,包括零,例如0,1 ...
- C++学了这么多年,你也许不知道为什么类定义要放在.h文件,类实现放在cpp文件。它们如何关联?
原文 http://blog.csdn.net/ithzhang/article/details/8119286 主题 C++ C++学了这么多年你知道为什么定义类时,类的定义放在.h文件中,而类 ...
随机推荐
- C# 后台发送get,post请求及WebApi接收
后台发送get请求 1.发送带参数的get请求 /// <summary> /// 发送get请求 参数拼接在url后面 /// </summary> /// <para ...
- Cube 技术解读 | Cube 小程序技术详解
本文为<Cube 技术解读>系列第三篇文章,之前上线的<支付宝新一代动态化技术架构与选型综述>与<Cube卡片技术栈解读>欢迎大家回顾. 魔方卡片(Cube)已在「 ...
- 字符串的展开expand
A. 字符串的展开(expand.cpp) 内存限制:64 MiB 时间限制:1000 ms 标准输入输出 题目类型:传统 评测方式:文本比较 题目描述 在初赛普及组的"阅读程序写结果&qu ...
- 2.OSI各层概述
应用层 1.用户与网络的界面,所有能和用户交互产生网络流量的程序 典型应用层服务:FTP.SMTP.HTTP 表示层 1.用于处理在两个通信系统中交换信息的标识方式 功能1:数据格式变换(翻译) 功能 ...
- Eureka原理与架构
一.原理图 Eureka:就是服务注册中心(可以是一个集群),对外暴露自己的地址 提供者:启动后向Eureka注册自己信息(地址,提供什么服务) 消费者:向Eureka订阅服务,Eureka会将对应服 ...
- 龙芯 3A4000 安装 Debian10 (via debootstrap)
由于一些原因,Debian 的内核不能直接在龙芯的 cpu 上使用.据悉 Linux 5.7 kernel 改进了对龙芯的支持,不久的将来我们应该就能更愉快地在龙芯上运行 Debian 了. 感谢龙芯 ...
- unity3d录音
using System.Collections; using System.Collections.Generic; using UnityEngine; public class record : ...
- 搭建服务器之FTP
FTP服务器,使用软件vsftpd,服务守护进程也是vsftpd.客户端访问的话可以用浏览器或ftp命令行. 1.yum install vsftpd.安装简单主要是配置,这个比httpd复杂点的地方 ...
- axios请求的封装
/* axios的请求封装 */ //axios的原生写法get,post请求 //第一个参数为请求地址,第二个参数为请求的参数,params是将参数拼接在url的后面 ...
- promise抛异常,执行队列
//promise抛出异常 new Promise((resolve,reject)=>{ resolve("成功") }).then(res=>{ if(res != ...