let width = UIScreen.mainScreen().bounds.size.width

let height = UIScreen.mainScreen().bounds.size.height

override func viewDidLoad() {

super.viewDidLoad()

self.title = "这是标题"

self.view.backgroundColor = UIColor.yellowColor()

//自定义标题视图

//        let titleLabel = UILabel(frame: CGRect(x: 0, y: 0, width: 200, height: 44))

//        titleLabel.textAlignment = NSTextAlignment.Center

//        titleLabel.backgroundColor = UIColor.grayColor()

//        titleLabel.font = UIFont.boldSystemFontOfSize(25)

//        titleLabel.textColor = UIColor.redColor()

//        titleLabel.text = "hehe"

//        self.navigationItem.titleView = titleLabel

let button = UIButton(type: UIButtonType.System)

button.setTitle("按钮", forState: UIControlState.Normal)

button.addTarget(self, action: "titleViewBtnClick:", forControlEvents: UIControlEvents.TouchUpInside)

button.frame = CGRect(x: 0, y: 0, width: 100, height: 30)

self.navigationItem.titleView = button

/*----------------------UINavigationItem两侧按钮----------------*/

//第一种方式

let leftItem1 = UIBarButtonItem(title: "anniu", style: UIBarButtonItemStyle.Done, target: self, action: "leftAnniuClick")

//        self.navigationItem.leftBarButtonItem = leftItem1

//第一种方式

let leftItem2 = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Bookmarks, target: self, action: "btnClick:")

//        self.navigationItem.leftBarButtonItem = leftItem2

self.navigationItem.leftBarButtonItems = [leftItem1, leftItem2]

//第三种方式(自定义按钮)

let rightButton = UIButton(type: UIButtonType.Custom)

rightButton.frame = CGRect(x: 0, y: 0, width: 33, height: 32)

rightButton.addTarget(self, action: "rightBtnClick:", forControlEvents: UIControlEvents.TouchUpInside)

rightButton.setImage(UIImage(named: "btn_search.png"), forState: UIControlState.Normal)

let rightItem = UIBarButtonItem(customView: rightButton)

self.navigationItem.rightBarButtonItem = rightItem

/*----------------UINavigationBar导航栏背景设置------------------*/

//隐藏导航栏

//        self.navigationController?.navigationBarHidden = true

//设置导航栏背景风格

self.navigationController?.navigationBar.barStyle = UIBarStyle.Default

//设置导航栏的半透明效果,默认是yes

//        self.navigationController?.navigationBar.translucent = false

//设置导航栏的背景颜色(必须有半透明效果)

//        self.navigationController?.navigationBar.backgroundColor = UIColor.redColor()

//将导航上所有的Label的字体变色

self.navigationController?.navigationBar.tintColor = UIColor.redColor()

//设置图片作为导航栏的背景,设置了背景图片,导航栏就不透明

var img = UIImage(named: "navbar_bg_normal.png")

UIGraphicsBeginImageContext(CGSizeMake(width, 64))

img?.drawInRect(CGRect(x: 0, y: 0, width: width, height: 64))

img = UIGraphicsGetImageFromCurrentImageContext()

UIGraphicsEndImageContext()

self.navigationController?.navigationBar.setBackgroundImage(img, forBarMetrics: UIBarMetrics.Default)

//设置提示文本,通常用不上

//        self.navigationItem.prompt = "正在保存";

}

func titleViewBtnClick(btn: UIButton) {

print("标题被点击了")

}

func leftAnniuClick() {

print("anniu被点击了")

}

func btnClick(btn: UIButton) {

print(btn)

}

func rightBtnClick(btn: UIButton) {

print("rightBtnClick")

}

Swift 导航栏设置的更多相关文章

  1. Swift 导航栏设置图片点击事件,图片蓝色的解决方案

    如果导航栏想做一个点击事件,正好是一个图片 我们可以直接这样: self.navigationItem.rightBarButtonItem = UIBarButtonItem(image: UIIm ...

  2. ABP(现代ASP.NET样板开发框架)系列之22、ABP展现层——导航栏设置

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之22.ABP展现层——导航栏设置 ABP是“ASP.NET Boilerplate Project (ASP.NE ...

  3. 转:ios导航栏设置

    原帖:http://www.cocoachina.com/industry/20131104/7287.html 本文提供的代码需要用Xcode 5来执行.如果你还在使用老版本的Xcode,那么在运行 ...

  4. 前端css小米导航栏设置及盒子定位居中问题

    1.小米最上部导航栏设置 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  5. swift导航栏导航按钮添加多个按钮事件

    //导航左边返回按钮 let button1 = UIButton(frame:CGRectMake(0, 0, 18, 18)) button1.setImage(Constant.Image.Na ...

  6. iOS 11导航栏设置BarButtonItem变形问题和错位问题

    升级到 iOS 11,你可能会发现你的 App 的工具栏的行为出了点异常.比如奇点,我在使用过程中,发现工具栏时灵时不灵,感觉很难点到.这是怎么回事?通过 Xcode 的 Debug View Hie ...

  7. iOS - 导航栏设置半透明或取消半透明

    self.navigationController.navigationBar.translucent = YES;//透明

  8. iOS不得姐项目--appearance的妙用,再一次设置导航栏返回按钮,导航栏左右按钮的封装(巧用分类)

    一.UI_APPEARANCE_SELECTOR 彩票项目中appearance的用法一直没有搞明白,这次通过第二个项目中老师的讲解,更深一层次的了解到了很多关于appearance的作用以及使用方法 ...

  9. iOS10 的适配问题,你遇到了吗?导航栏标题和返回按钮神奇的消失了

    苹果系统升级后好多应用都发了新版本来适配,今天就来分享一下我的适配历程. 首先是出现的问题: 1.push一个控制器,返回按钮和标题神奇的消失了,打开三维视图(比较坑的是有的版本老到打不开三维视图 ) ...

随机推荐

  1. hadoop中map和reduce的数量设置

    hadoop中map和reduce的数量设置,有以下几种方式来设置 一.mapred-default.xml 这个文件包含主要的你的站点定制的Hadoop.尽管文件名以mapred开头,通过它可以控制 ...

  2. 文本IO 二进制IO

    一.文本IO  字符流 使用PrintWriter写入文件后,必须调用close(),否则数据不能正确保存在文件中. Scanner的next()读取一个由分隔符分隔的字符串,nextLine()读取 ...

  3. C#判断用户是手机访问还是PC访问

    今天在做一个wap网站时,需要限制PC用户访问.网上找了很多资料,效果都不怎么理想.其实原理就是根据HTTP_USER_AGENT判断检查用户在用什么浏览器,再根据业务做相应的逻辑处理. 代码如下: ...

  4. 一个很大的文件,存放了10G个整数的乱序数列,如何用程序找出中位数。

    一.梳理审题 一.看清题目: 注意这个题目的量词,这个文件中有10G个整数,而不是这个文件占了10G的内存空间. 二.一些疑问: 在计算机中我们讲的G.M等都是存储容量的概念,但是一般都会在会面加上B ...

  5. ZOJ Monthly, January 2018 Solution

    A - Candy Game 水. #include <bits/stdc++.h> using namespace std; #define N 1010 int t, n; int a ...

  6. strlen与sizeof区别

    1. strlen(char*)函数求的是字符串的实际长度,它求得方法是从开始到遇到第一个'\0',如果你只定义没有给它赋初值,这个结果是不定的,它会从aa首地址一直找下去,直到遇到'\0'停止. c ...

  7. Windows10下用Anaconda3安装TensorFlow教程【转】

    本文转载自:https://www.cnblogs.com/HongjianChen/p/8385547.html 1. 安装好Anaconda3版本 (1) 注:可以发现最新版本是Anaconda5 ...

  8. Ubuntu Budgie 18.04 是最好的Remix【转】

    本文转载子:https://www.linuxidc.com/Linux/2018-05/152223.htm [日期:2018-05-05] 来源:Linux公社  作者:醉落红尘 [字体:大 中  ...

  9. linux下查看当前登陆的用户数目

    在shell下输入以下语句即可获取: who | awk '{print $1}' | sort | uniq | wc -l

  10. Spring Cloud 开发的一些推荐规划

    1.提供一个统一的 父 pom 依赖    作用:统一版本与引入必要依赖 2.提供一个模板模型. 作用: 开发人员不必关系具体基础启动项 3.提供一个统一基础配置模型 作用: 开发人员不比太过关注与必 ...