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那里调用.如果有网友知道请告诉我.谢谢. 我用就自己设置一个工具.界面比较丑!没有美工. 代码: ...
随机推荐
- getElementById的缩略
谁都知道document.getElementById这个方法写起来比较麻烦,所以有时候我们会使用jq或者自己写一个小函数去封装,但是我这次说的缩略不同于往常的函数封装 在以前,我做过很多这样的尝试, ...
- mac下的应用程序发布 及 打包(Python写的脚本,可打包第三方库)
其实这个问题在网上能搜到大把的解决方案.大家的统一答案都是 otool -L yourapp.app/Contents/MacOS/yourapp 根据输出信息在运行 install_name_too ...
- Android ReceiverCallNotAllowedException: BroadcastReceiver components are not allowed to register to receive intents
ReceiverCallNotAllowedException mContext.registerReceiver()不能在BroadcastReceiver的onReceive()里面调用 可以通过 ...
- Oracle成长点点滴滴(3)— 权限管理
上篇我们解说了创建用户以及主要的授权问题.以下我们来解说权限包含对象权限和系统权限. 事实上上节课我们解说就是系统的权限.系统权限就是一些创建表了,表空间等等的系统的权限. 1. 系统权限 ...
- hdu 4940 Destroy Transportation system( 无源汇上下界网络流的可行流推断 )
题意:有n个点和m条有向边构成的网络.每条边有两个花费: d:毁坏这条边的花费 b:重建一条双向边的花费 寻找这样两个点集,使得点集s到点集t满足 毁坏全部S到T的路径的费用和 > 毁坏全部T到 ...
- ADO.NET 1创建连接、执行命令
一无参构造函数的形式: 创建连接.创建命令.执行命令: string connstr = @"server=.;database=TestDataBase;uid=sa;pwd=130988 ...
- 【linux驱动】linux驱动总览
欢迎转载,转载时需保留作者信息,谢谢. 邮箱:tangzhongp@163.com 博客园地址:http://www.cnblogs.com/embedded-tzp Csdn博客地址:http:// ...
- poj1459 Power Network --- 最大流 EK/dinic
求从电站->调度站->消费者的最大流,给出一些边上的容量.和电站和消费者能够输入和输出的最大量. 加入一个超级源点和汇点,建边跑模板就能够了. 两个模板逗能够. #include < ...
- Java多线程-实例解析
Java多线程实例 3种实现方法Java中的多线程有三种实现方式:1.继承Thread类,重写run方法.Thread本质上也是一个实现了Runnable的实例,他代表一个线程的实例,并且启动线程的唯 ...
- QCompleter自动补全
知识永远是那么多,想到什么就总结什么,今天记录一下关于我对QComplete的一些小见解. 官方文档中叙述如下: 可以在任何Qt的窗口小部件中使用QCompleter提供自动补全功能,如 ...