代码如下:

1、声明及初始化

var toolsBar = UIToolbar()

toolsBar.frame = CGRect(x:, y:, width:SCREEN_WIDTH, height:)
toolsBar.backgroundColor = UIColor.gray
self.view.addSubview(toolsBar)

2、UIBarButtonItem是工具条按钮,有如下初始化方法

1)初始化为普通图片

//创建后退按钮
let btnback = UIBarButtonItem(image:UIImage(named:"Icon_58"),
style: .plain, target:self,
action:#selector(backClick(sender:)))
// 创建第一个分隔按钮
let btngap1 = UIBarButtonItem(barButtonSystemItem:.flexibleSpace,target:nil,action:nil)
btngap1.width =
// 创建前进按钮 UIBarButtonItem
let btnForward = UIBarButtonItem(image:UIImage(named:"Icon_58"),
style: .plain, target:self,
action:#selector(forwardClick(sender:)))
// 第二个分隔按钮,创建一个可伸缩的UIBarButtonItem
let btngap2 = UIBarButtonItem(barButtonSystemItem:.fixedSpace,target:nil,action:nil) // 添加按钮
toolsBar.setItems([btnback,btngap1,btngap2,btnForward], animated: false)

2)普通图片按钮,但提供另一个备选图像供横屏使用

//普通图片按钮,但提供另一个备选图像供横屏使用
let btnBacks = UIBarButtonItem(image:UIImage(named:"reload.png"),landscapeImagePhone:UIImage(named:"forward.png"),style:.plain, target:self,action:#selector(hBackClick(sender:))); //把按钮添加到工具条上
toolsBar.setItems([btnback], animated: true)

3)普通文本按钮,共有25个按钮

Custom:默认样式
Flexible Space:自动伸缩的空白占位符
Fixed Space:固定宽度的占位元素
Add:“+”加号样式
Edit:Edit文字样式
Done:Done文字样式
Cancel:Cancel文字样式
Save:Save文字样式
Undo:Undo文字样式
Redo:Redo文字样式
Compose:背景矩形插支笔的图标样式
Reply:返回箭头的图标样式
Action:背景矩形加上一个向上箭头的图标样式
Organize:文件夹的图标样式
Trash:垃圾桶的图标样式
Bookmarks:书的图标样式
Search:放大镜的图标样式
Refresh:顺时针圆形箭头的图标样式
Stop:一个×的图标样式
Camera:一个照相机的图标样式
Play:向右三角形代表播放的图标样式
Pause:两条竖线代表播放的图标样式
Rewind:向左两个三角代表回退的图标样式
Fast Forward:向右两个三角代表快进的图标样式
Page Curl:页面旋转的图标样式。在Xcode 6中似乎不显示
具体代码:
//普通文本按钮  共有25个按钮
let btn1 = UIBarButtonItem(barButtonSystemItem:.compose,target:nil, action:nil);
let btn2 = UIBarButtonItem(barButtonSystemItem:.add,target:nil, action:nil);
let btn3 = UIBarButtonItem(barButtonSystemItem:.flexibleSpace,target:nil, action:nil);
let btn4 = UIBarButtonItem(barButtonSystemItem:.reply,target:nil, action:nil); toolsBar.setItems([btn1,btn2,btn3,btn4], animated: false)

3、间隔(弹性间隔和固定间隔)

//弹性间隔
let btngap1 = UIBarButtonItem(barButtonSystemItem:.flexibleSpace,target:nil,action:nil); //固定间隔
let btngap2 = UIBarButtonItem(barButtonSystemItem:.flexibleSpace,target:nil,action:nil);
btngap2.width =

注:如果想绑定响应方法的话,可以之间进行绑定就可以,我这里是直接传的nil

swift - UIToolbar 的用法的更多相关文章

  1. Swift - enumerateObjectsUsingBlock的用法

    enumerateobjectsusingblock:不是Array的方法在NSArray使用.如果你想使用它,你需要一个实例NSArray而不是Array. import Foundation va ...

  2. swift函数的用法,及其嵌套实例

    import Foundation //swift函数的使用 func sayHello(name userName:String ,age:Int)->String{ return " ...

  3. Swift继承的用法

    一个类可以继承另一个类的方法,属性和其它特性.当一个类继承其它类,继承类叫子类,被继承类叫超类(或父类).在Swift中,继承是区分「类」与其它类型的一个基本特征. 在Swift中,类可以调用和访问超 ...

  4. swift - UIAlertController 的用法

    ios 8 以后苹果官方建议使用UIAlertController这个类,所以专门去网上找资料,了解了下用法, 1.创建一个alertController let alertController = ...

  5. swift - UIAlertView 的用法

    1,创建一个alertview,并带有“确定”和“取消”两个按钮 (注:在这里使用alertview,会报警告,那是因为从ios 8 以后,建议使用UIAlertviewController) //警 ...

  6. swift - UISlider 的用法

    swift的UISlider的用法和oc基本没有区别 1.创建 class SecondViewController: UIViewController { var slider = UISlider ...

  7. swift - UISegmentedControl 的用法

    一.创建控件,并监听控件选择值 /*选项除了文字还可以是图片 as关键字的作用就是字面意思:类型转换*/ let items = ["选项一", "选项二", ...

  8. swift UILable的用法

  9. Swift - UITableView的用法

    因为倾向于纯代码编码,所以不太喜欢可视化编程,不过也略有研究,所以项目里面的所有界面效果,全部都是纯代码编写! 终于到了重中之重的tableview的学习了,自我学习ios编程以来,工作中用得最多的就 ...

随机推荐

  1. Solr学习之五

    一.段管理 段是一个自包含,仅可读的solr的索引的子集.一旦一个段被刷新到持久存储后,它将不会改变.当添加新文档到你的索引时候,它们被写入到新的段中.因此,在你的索引中,有很多激活的段.一次查询必须 ...

  2. 启用div作为编辑器 添加contentEditalbe = “true”,如何让在Html中特殊字符不被转义

    今天项目中碰到了两个难以解决的问题,一个是ctrl + enter键换行,enter键发送和支持html特殊字符的发送,二人会话和群会话都必须支持,发送短信的模块也必须支持特殊的字符,但是现在碰到的问 ...

  3. C#与C++区别

    C#是三大主流OOP(面向对象编程)语言(C++,Java,C#)之一,也是最新的一种,其中必然借鉴了前两者的长处,“否则它的缔造者就该打屁股”——候捷语,见<C#Primer中文版>的译 ...

  4. shadowshocks下载地址

    https://github.com/shadowsocks/shadowsocks-windows/releases

  5. 修改IIS下默认的ASP.NET版本。

    已经安装net2.0 和3.5 ,但IIS里面却只有1.1 开始→运行→CMD C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis. ...

  6. Hibernate xml配置方法之联合主键

    1.StudentPK类,存放Student的联合主键,必须实现java.io.Serializable接口(为了序列化扩充移植),必须重写equals跟hashCode方法(为了确保唯一性) pub ...

  7. kernel 3.2.0 上加入自己的板级文件

    第一步.复制自己的参考的板级文件 cp arch/arm/mach-omap2/board-am335xevm.c arch/arm/mach-omap2/board-aplex_ECM_5412.c ...

  8. NIO与传统IO的区别<转>

    传统的socket IO中,需要为每个连接创建一个线程,当并发的连接数量非常巨大时,线程所占用的栈内存和CPU线程切换的开销将非常巨大.使用NIO,不再需要为每个线程创建单独的线程,可以用一个含有限数 ...

  9. uboot中MAC网络(待续)

    start ->start_armboot ->main_loop 实际应用中问题:为什么从nandflash读出的MAC(写到物理phy上)与上层网口地址不同(上层网口采用env的mac ...

  10. Entity Framework表拆分

    一.概念 表拆分:一个表拆分成多个实体,例如Photograph表,可以拆分为Photograph和PhotographFullImage两张表. Photograph实体结构: using Syst ...