您的位置:首页 > 其它

导航控制器实例——锤子标签

2016-04-10 15:56 495 查看
学习内容源于::宏创学院 » UINavigationController介绍:6-自定义导航栏(锤子便签)

请先阅读相关网页,以下内容为学习收获和体会,本人使用Swift代码实现

1、如何使导航栏透明?

代码如下:

<span style="white-space:pre">	</span>//设置导航栏样式(为了正常显示状态栏)
self.navigationBar.barStyle = UIBarStyle.Black

//设置导航栏透明
self.navigationBar.<u>set</u>BackgroundImage(UIImage(), forBarMetrics: UIBarMetrics.Default)//设置背景图片(图片不填充)
self.navigationBar.shadowImage = UIImage()//设置导航栏shadoe图片(不填充)
self.navigationBar.translucent = true //设置允许透明
其实不是太懂为什么就可以实现透明?

2、实现导航栏定制按钮

简单开发中可以直接使用一行代码生成简单按钮放在导航栏上,但在实际开发中,按钮的样式就不是那么简单,所以需要定制按钮添加:

a、创建UIButton按钮对象(实现定制,包括事件响应),创建UIView对象,与按钮大小相当(作用:可以根据后期设备不同设置不同偏移量,从而使应用显示一致)【L】

b、将按钮添加到UIView对象。

c、创建一个UIBarButtonItem对象(导航栏上放的是这种类型的按钮),将UIView对象作为此对象的初始化参数(可以把UIBarButtonItem只看做一个容器而已)

d、将上面对象加到导航栏即可(self.navigationItem.leftBarButtonItem=
leftBarButtonItem)

Q:可以直接实现UIBarButtonItem的样式改变吗?

答案是肯定的,请参考官网文档:UIBarButtionItem Class Reference(提示类型为UIBarButtonSystemItemFlexibleSpace或者UIBarButtonSystemItemFixedSpace
,这两个类型的UIBarButtonItem为空白占位)

不过最好不要选择,我好像无法控制其大小,也得不到其位置大小,有些定制还是无法实现,而且会出现问题:导航按钮点击空白响应
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: