Swift - 工具条(UIToolbar)的用法
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
class ViewController: UIViewController{ override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. // 创建一个浏览器工具条,并设置它的大小和位置 var browserToolbar = UIToolbar(frame:CGRectMake(0, 20, 320, 44)) // 将工具条添加到当前应用的界面中 self.view.addSubview(browserToolbar) //创建后退 var btnback = UIBarButtonItem(image:UIImage(named:"back.png"), style:UIBarButtonItemStyle.Bordered, target:self,action:Selector("backClicked:")); //第一个分隔按钮 var btngap1 = UIBarButtonItem(barButtonSystemItem:UIBarButtonSystemItem.FlexibleSpace, target:nil, action:nil); // 创建前进按钮 UIBarButtonItem var btnforward = UIBarButtonItem(image:UIImage(named:"forward.png"), style:UIBarButtonItemStyle.Plain, target:self, action:Selector("forwardClicked:")); // 第二个分隔按钮,创建一个可伸缩的UIBarButtonItem var btngap2 = UIBarButtonItem(barButtonSystemItem:UIBarButtonSystemItem.FlexibleSpace, target:nil, action:nil); } func backClicked(sender:UIBarButtonItem) { //后退 } func forwardClicked(sender:UIBarButtonItem) { //前进 }} |
(2)普通图片按钮,但提供另一个备选图像供横屏使用
|
1
2
|
var btnback = UIBarButtonItem(image:UIImage(named:"back1.png"),image:UIImage(named:"back2.png"), style:UIBarButtonItemStyle.Bordered, target:self,action:Selector("backClicked:")); |
(3)普通文本按钮
|
1
2
|
var btnback = UIBarButtonItem(title:"确定", style:UIBarButtonItemStyle.Plain, target:self,action:Selector("confrim:")); |
(4)使用预置按钮:如撤销,重做,编辑等(总共有25个样式)
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
import UIKitclass ViewController:UIViewController{ var pickerView:UIPickerView! override func viewDidLoad() { super.viewDidLoad() // 创建一个浏览器工具条,并设置它的大小和位置 var browserToolbar = UIToolbar(frame:CGRectMake(0, 20, 320, 44)) // 将工具条添加到当前应用的界面中 self.view.addSubview(browserToolbar) var btn1 = UIBarButtonItem(barButtonSystemItem:UIBarButtonSystemItem.Compose, target:nil, action:nil); var btn2 = UIBarButtonItem(barButtonSystemItem:UIBarButtonSystemItem.Add, target:nil, action:nil); var btn3 = UIBarButtonItem(barButtonSystemItem:UIBarButtonSystemItem.FlexibleSpace, target:nil, action:nil); var btn4 = UIBarButtonItem(barButtonSystemItem:UIBarButtonSystemItem.Reply, target:nil, action:nil); browserToolbar.setItems([btn1,btn2,btn3,btn4], animated: false) } } |
(5)使按钮变成任意一个UIView
2,使用UIBarButtonItem还可以创建间隔项
(1)弹性间隔(会尽可能往两端伸长)
|
1
2
3
|
var btngap1 = UIBarButtonItem(barButtonSystemItem:UIBarButtonSystemItem.FlexibleSpace, target:nil, action:nil); |
(2)固定间隔(自定义宽度)
|
1
2
3
4
|
var btngap1 = UIBarButtonItem(barButtonSystemItem:UIBarButtonSystemItem.FixedSpace, target:nil, action:nil);btngap1.width = 50 |
Swift - 工具条(UIToolbar)的用法的更多相关文章
- swift - UIToolbar 的用法
代码如下: 1.声明及初始化 var toolsBar = UIToolbar() toolsBar.frame = CGRect(x:, y:, width:SCREEN_WIDTH, height ...
- SWIFT显示底部的工具条
有以下页面显示我的讯息,用户可以点击右上角的编辑按钮进入删除状态.点击编辑按钮后,按钮文字改为“取消”,左上角的按钮变为“全选”,同时显示底部工具条带有“删除”按钮 实现起来挺简单的,在正常状态下点击 ...
- iOS:导航栏的工具条和导航条
功能:用NAV视图控制器打开新的视图,默认工具条和导航条隐藏,双击显示之 // // main.m // Hello // // Created by lishujun on 14-8-28. // ...
- 学习OpenSeadragon之五(工具条toolbar与自定义按钮)
OpenSeadragon简介:学习OpenSeadragon之一(一个显示多层图片的开源JS库) 一.工具条toolbar设置 OpenSeadragon为我们提供了现成的工具条toolBar,工具 ...
- 如何往IE工具条添加按钮(转载)
如何往IE工具条添加按钮 问题提出:金山词霸.网络蚂蚁等软件安装后会向IE的工具条添加自己的按钮.按下按钮后还会作出相应的动作,这种功能是如何实现的呢?读完本文,您也可以将自己应用程序的按钮添加到IE ...
- Fiddler(二)Fiddler操作界面[工具条]和[底部状态面板]说明
工具条说明 下面从左往右介绍一下每个按钮在工作中能起到什么作用,我这里是汉化版,所以顾名思义大家也能大概明白,并且鼠标在对应的图标上停留会有官方解释.下面再稍微补充一下 从第二个按钮说起,也就是小气泡 ...
- IE浏览器弹出的文件下载工具条实现自动另存为
IE浏览器中如果有一个文件可以下载,用鼠标点击一下文件的超链接,会在IE浏览器下方出现一个工具条,工具条上主要有“打开” “保存”两个按钮. 如果点击“保存”按钮,会把附件保存到系统的“下载”或“Do ...
- iOS 导航栏 工具条
导航栏最常见的例子就是返回按钮的所在 在AppDelegate.m中,代码布局最开始定义窗口的时候, _window.rootViewController就应该为一个UINavigationContr ...
- Navisworks API 简单二次开发 (自定义工具条)
在Navisworks软件运行的时候界面右侧有个工具条.比较方便.但是在二次开发的时候我不知道在Api那里调用.如果有网友知道请告诉我.谢谢. 我用就自己设置一个工具.界面比较丑!没有美工. 代码: ...
随机推荐
- Qt删除指定文件
Qt删除指定文件: QFile fileTemp(filename); fileTemp.remove();
- NET Core 构成体系
NET Core 构成体系 简析 .NET Core 构成体系 Roslyn 编译器 RyuJIT 编译器 CoreCLR & CoreRT CoreFX(.NET Core Librarie ...
- SignalR系列教程:在MVC5中使用SignalR
本章主要内容: 1:向MVC5添加SignaIr 2: 什么是集线器,如何创建集线器 3: 客户端通过jqery调用集线器 本文还是延续“SignaIR快速入门”中聊天室的例子进行讲解.首先我们通过V ...
- 利用java concurrent 包实现日志写数据库的并发处理
一.概述 在很多系统中,往往需要将各种操作写入数据库(比如客户端发起的操作). 最简单的做法是,封装一个公共的写日志的api,各个操作中调用该api完成自己操作日志的入库.但因为入数据库效率比较低,如 ...
- 高性能MySql学习笔记——锁、事务、隔离级别(转)
为什么需要锁? 因为数据库要解决并发控制问题.在同一时刻,可能会有多个客户端对Table1.rown进行操作,比如有的在读取该行数据,其他的尝试去删除它.为了保证数据的一致性,数据库就要对这种并发操作 ...
- CString Format 乱码问题
CString m_buf;CStatic *m_static;char *szName;...m_buf.Format(":%s",szName);m_static->Se ...
- SQL 多个表之间联合查询
非常少用join,这次学学,并备忘两篇文章! 转自:http://hcx-2008.javaeye.com/blog/285661 连接查询 通过连接运算符能够实现多个表查询.连接是关系数据库模型的主 ...
- jQuery 查询 xml
加载xml:(注:这个方法在Chrome是用不了的,Chrome是禁止访问本地的xml文件,在ie11里面用不了,ie11的xmlDom文档没有load方法) function loadXML(fil ...
- 前端面试题整理(css)
1.介绍所知道的CSS hack技巧(如:_, *, +, \9, !important 之类). CSS hack的原理: 由于不同的浏览器和浏览器各版本对CSS的支持及解析结果不一样,以及CSS优 ...
- 最简单的基于FFMPEG+SDL的视频播放器 ver2 (採用SDL2.0)
===================================================== 最简单的基于FFmpeg的视频播放器系列文章列表: 100行代码实现最简单的基于FFMPEG ...