一、UINavigationBar
1、导航栏的基本概念
一个导航控制器一般包含有四个对象:UINavigationConter、UINavigationBar、UINavigationConter、UINavigationItem;其中UINavigationItem存放在UINavigationBar上。由下图我们可以看出一个导航控制器含有多个视图控制器,一个视图控制器控制一个UINavigationItem
2、导航栏结构图
导航栏结构剖析图(类关系图)
导航栏结构剖析图(结构关系图)
二、定制导航栏
1、定制标题视图
通过NavigationItem的titleView属性,定制标题视图。titleView属性是一个视图类,因此可以添加一个UIView子类,也可在UIView的实例中添加子视图。
2、定制左,右栏目。
通过对导航栏的结构我们了解到NavigationItem的title实例中有一个leftBarButtonItem和rightBarButtonItem,而这两个属性又是一个UIBarButtonItem的实例,因此,通过初始化UIBarButtonItem实例,设置导航栏的左,右栏目项。
三、自定义左,右栏目常用方法
定制左,右栏目常用方法
UIBarButtonItem类提供了四个常用的初始化方法,用户可以得到不同风格的Item。如,可以调用系统的定义的Item,也可以调用用户自定义的Item(图片,标题),用户还可以自定义一个视图。
四、设置导航栏
五、设置导航栏
1、隐藏返回按钮
2、设置prompt属性
导航栏的prompt属性,通过navigationItem来设置,其主要作用是用于提示用户。比如,用户正在请求网络数据时,提示用户数据正在加载。待加载完成后可以将它的值设置为nil,取消显示。