文档章节

Swift_ios_开发之UINavigationController的常用属性那些事

猴亮屏
 猴亮屏
发布于 2016/07/28 16:08
字数 513
阅读 471
收藏 0

精选30+云产品,助力企业轻松上云!>>>

1.导航栏是否隐藏

self.navigationController?.navigationBar.hidden = false

这里要注意一点,navigationBar在页面中是与基View平级的,所以如果导航栏一开始是隐藏的,当页面加载完毕又想让他显示,这时候会发现基页面整体向下移动了,并且原来的内容会有一部分显示不完整!经过调试发现,如果不隐藏导航栏,基view的高度是屏幕高度与导航栏高度的差;如果隐藏了导航栏,基view的高度就是整个屏幕的高度。所以一开始隐藏了导航栏,页面加载完成再显示,就需要把基view的高度减去导航栏的高度!

2.导航栏的最底部颜色设置

//backgroundColor 是最底下的color 
self.navigationController?.navigationBar.backgroundColor = UIColor.redColor()

3.导航栏的表层颜色,即首先看到的颜色

//barTintColor 是表层颜色
self.navigationController?.navigationBar.barTintColor = UIColor.grayColor()

4.导航栏中间标题title的颜色,大小,字体设置

self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName:UIColor.blueColor(),NSFontAttributeName:UIFont(name: "Heiti SC", size: 24.0)!]

5.导航栏隐藏左边backitem,即leftbarbuttonitem

//完全隐藏backItem//
self.navigationItem.setHidesBackButton(true, animated: true)

6.导航栏leftbarbuttonitem的颜色设置

swiftself.navigationController?.navigationBar.tintColor = UIColor.whiteColor()

7.导航栏leftbarbuttonitem的字体,颜色,大小设置

self.navigationItem.leftBarButtonItem?.setTitleTextAttributes([NSForegroundColorAttributeName:UIColor.blueColor(),NSFontAttributeName: UIFont(name: "Chalkduster", size: 13)!], forState: UIControlState.Normal)

8.导航栏重新定义leftbarbuttonitem

//重新定义backItem,将覆盖原来的BackItem.与storyboard中拖入一个item,效果一样。都是覆盖原来的backitem。

//第一种代码定义方式
self.navigationItem.setLeftBarButtonItem(UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Add, target: self, action: "function"), animated: true)

//第二种代码定义方式 
self.navigationItem.leftBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Add, target: self, action: "function")

//第三种代码定义的方式
self.navigationItem.setLeftBarButtonItem(UIBarButtonItem(title: "<Grandre", style: UIBarButtonItemStyle.Plain, target: self, action: "function"), animated: true)

9.导航栏设置成透明

//将导航栏设置成透明
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), forBarMetrics: UIBarMetrics.Default)
self.navigationController!.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.translucent = true

如果对你有帮助,记得mark一下哦!


 

文/ChinaSwift(简书作者)
原文链接:http://www.jianshu.com/p/738d9387ed12/comments/1185395
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

猴亮屏

猴亮屏

粉丝 37
博文 550
码字总数 62747
作品 4
北京
Android工程师
私信 提问
加载中
请先登录后再评论。
一篇文章看懂有关iOS开发语言的一切!

原文来自cocoachina 前言 iOS开发语言有哪些? OS开发语言主要包括什么? iOS开发语言具体怎么学习? 今天重点介绍一下: iOS开发语言主要包括:C语言基础、Obiective-C编程、Swift、UIKit框...

osc_3g4j2ghj
06/17
5
0
一篇文章看懂有关iOS开发语言的一切!

原文来自cocoachina 前言 iOS开发语言有哪些? OS开发语言主要包括什么? iOS开发语言具体怎么学习? 今天重点介绍一下: iOS开发语言主要包括:C语言基础、Obiective-C编程、Swift、UIKit框...

敲代码无限循环
06/16
0
0
一篇文章看懂有关iOS开发语言的一切!

原文来自cocoachina 前言 iOS开发语言有哪些?OS开发语言主要包括什么?iOS开发语言具体怎么学习? 今天重点介绍一下: iOS开发语言主要包括:C语言基础、Obiective-C编程、Swift、UIKit框架...

不思议的iOS
06/16
3
0
热门技术类公众号

https://www.aliyun.com/jiaocheng/37495.html 捡了两个需要的关注了一下,里面有十个吧 ,闲的时候公交的时候,可以翻一下,温故而知新。 /\/\ \  / \/ 看没看出来上面的符号是一...

YAYAYAYAJIE
2018/10/10
2
0
Swift 4 for Absolute Beginners, 4th Edition 免积分下载

图书说明: 保持积极性并克服障碍,同时学习使用Swift Playgrounds成为优秀的iOS开发人员。本书非常适合那些没有编程背景的人,那些具有一定编程经验但没有面向对象体验的人,或那些对应用程...

起风了123
2019/01/06
2
0

没有更多内容

加载失败,请刷新页面

加载更多

java使用jsoup时绕过https证书验证.md

java 代码 增加一个工具类 在jsoup获取之前调用此方法 //your codeSSLHelper.init();Connection connect = Jsoup.connect(url).userAgent(USER_AGENT);connect.header("Accept","text/htm......

MeiJM
13分钟前
24
0
6 Message 消息提示框

1 element.js导入message import { Message } from 'element-ui'# 赋值给变量,便于this调用Vue.prototype.$message = Message 2 调用 this.$message.error('错误')类型有:success,w......

书阳
13分钟前
16
0
聊聊rocketmq-client-go的strategy

序 本文主要研究一下rocketmq-client-go的strategy AllocateStrategy rocketmq-client-go-v2.0.0/consumer/strategy.go type AllocateStrategy func(string, string, []*primitive.MessageQ......

go4it
41分钟前
21
0
BuildRun低代码开发教程八节 | 图表和仪表盘展示

课程说明 ▍ 1.1 课程实现功能 本课程为物联网应用平台设计一个仪表盘首页,包括以下内容: 卡片展示设备总数; 卡片展示网关总数; 卡片展示产品总数; 卡片展示产品分组总数; 图表展示各运...

BuildRun团队
45分钟前
23
0
JavaSE第03篇:Java基础语法之运算符和流程控制

本章将会延续JavaSE第02篇,详细讲解Java基础语法中的运算符和流程控制中的顺序结构、分支结构。 第一章:运算符 运算符,简而言之就是运算的符号。 我们通常所理解的运算一般和数学有关系,...

雷哒哒
47分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部