Swift基础之UIButton
//设置全局变量,将下面的替换即可
//var myButton = UIButton();
//系统生成的viewDidLoad()方法
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//创建局部变量UIButton
let myButton = UIButton.init(type: .Custom);
//设置位置大小
myButton.frame = CGRectMake(100, 100, 200, 100);
//设置按钮标题
myButton.setTitle("按钮点击", forState: .Normal);
//设置标题字体大小
myButton.titleLabel?.font = UIFont.systemFontOfSize(32);
//设置按钮标题颜色
myButton.setTitleColor(UIColor.redColor(), forState: .Normal);
//设置按钮标题显示的位置
myButton.contentHorizontalAlignment = UIControlContentHorizontal.AlignmentLeft;
//设置背景图片
myButton.setBackgroundImage(UIImage.init(named: "paybg.png"), forState: .Normal);
//设置按钮背景颜色
//myButton.backgroundColor = UIColor.cyanColor();
//设置按钮标题高亮状态下的颜色
myButton.setTitleColor(UIColor.darkGrayColor(), forState: .Highlighted);
//设置按钮标题阴影位置,默认为(0,0)
myButton.titleLabel?.shadowOffset = CGSizeMake(2.0, 1.0);
//设置按钮标题阴影颜色
myButton.setTitleShadowColor(UIColor.blueColor(), forState: .Normal);
//设置按钮边框圆角
myButton.layer.cornerRadius = 10;
//设置按钮边框宽度,默认为0
myButton.layer.borderWidth = 2;
//设置按钮边框颜色,默认为黑色
myButton.layer.borderColor = UIColor.brownColor().CGColor;
//设置圆角之外的界面是否剪切,swift中的YES和NO改成了true和false
myButton.clipsToBounds = true;
//设置按钮tag值
myButton.tag = 2;
//设置按钮点击事件,Swift语言中当你添加事件后,必须要添加,否则会crash
/*
//此处要注意:
2.2版本之前,这样写不会出现警告,也不会出现错误
myButton.addTarget(self, action:"buttonClick", forControlEvents: .TouchUpInside);
现在2.2版本,如果这样写会出现警告,点出警告,系统会帮你修订正确方法:
myButton.addTarget(self, action:#selector(ViewController.buttonClick(_:)), forControlEvents: .TouchUpInside); */
//也可以这样写
myButton.addTarget(self, action:#selector(buttonClick), forControlEvents: .TouchUpInside);
//添加视图
self.view.addSubview(myButton);
}
//按钮的点击事件
func buttonClick(sender:UIButton!){
print("print输出按钮的tag值",sender.tag);
NSLog("NSLog输出按钮的tag值.....%d", sender.tag);
}
Swift基础之UIButton的更多相关文章
- iOS Swift 模块练习/swift基础学习
SWIFT项目练习 SWIFT项目练习2 iOS Swift基础知识代码 推荐:Swift学习使用知识代码软件 0.swift中的宏定义(使用方法代替宏) 一.视图 +控件 1.UIImag ...
- swift基础:第六部分:类与对象
http://reactnative.cn/docs/0.24/getting-started.html#content(react Native 开发文档) 互联网这个时代,你松懈一天,就会有很多很 ...
- swift基础:第二部分:函数和闭包
今天本来想利用上午的时间本来打算将swift基础部分学习完的,不巧的是,后台来和我讨论用户评价的接口,讨论过后,商讨出一种可行的方案,十几分钟时间过去了,我拿到将接口介入到已经完成的页面中,完美,终于 ...
- Swift基础语法学习总结(转)
Swift基础语法学习总结 1.基础 1.1) swift还是使用// 和/* */ 来注释,并且/* */允许多行注释. 1.2) swift使用print和println打印,它的传参是一个泛型 ...
- Swift基础语法学习总结
Swift基础语法学习总结Swift高级语法学习总结Swift语法总结补充(一) 1.基础 1.1) swift还是使用// 和/* */ 来注释,并且/* */允许多行注释. 1.2) swift ...
- swift -- 基础
swift -- 基础 1.常量和变量 常量: let 变量: var 2.声明常量和变量 常量的声明: let let a = 1 //末尾可以不加分号,等号两边的空格必须对应(同 ...
- Swift基础学习
Swift基础学习 http://c.biancheng.net/cpp/html/2242.html 这个网站最近看了一下,对于基本语法解释概括的相对全面,如同重新练习一遍OC似的,挺全面的,谢谢 ...
- Swift基础之使用Alamofire库进行网络请求和断点下载
好久没有写过Swift相关的文章博客了,这里我就展示一下关于使用Alamofire库的方法 1.什么是Alamofire (1)Alamofire 的前身是 AFNetworking.AFNetwor ...
- 第三篇、Swift基础学习
1.常量与变量 什么是常量和变量 在Swift中规定:在定义一个标识符时必须明确说明该标识符是一个常量还是变量 使用let来定义常量,定义之后不可以修改 使用var来定义变量,定义之后可以修改 变量的 ...
随机推荐
- Docker: How to enable/disable HTTP Proxy in Toolbox
1. docker-machine ssh default 2. sudo vi /var/lib/boot2docker/profile 3. # replace with your offi ...
- zookeeper基本原理及适用场景 转:http://blog.chinaunix.net/uid-26748613-id-4536290.html
1.1 zookeeper简介 Zookeeper 是 Hadoop 生态系统中的协同实现,是Hadoop集群管理的一个必不可少的模块,它主要来控制集群中的数据,如它管理Hadoop集群中的NameN ...
- mysql 数据类型别名参考
To facilitate the use of code written for SQL implementations from other vendors, MySQL maps data ty ...
- Programming In Scala笔记-第八章、函数与闭包
当程序的代码量增大时,就需要对各功能模块进行分割,这些分割的小模块就是本文中接下来会进行分析的函数.接下来的部分会讲解包括函数嵌套,函数字面量,以及函数值等概念. 一.方法 一会函数一会方法的,是不是 ...
- Redis源码剖析--源码结构解析
请持续关注我的个人博客:https://zcheng.ren 找工作那会儿,看了黄建宏老师的<Redis设计与实现>,对redis的部分实现有了一个简明的认识.在面试过程中,redis确实 ...
- CSS3 滤镜学习
html篇 样式篇 grayscale sepia saturate hue-rotate invert opactiy brightness contrast blur drop-shadow 综合 ...
- Python 描述符 data 和 non-data 两种类型
仅包含__get__的,是non-data descriptor, 如果实例__dict__包含同名变量, 则实例优先; 如果还包含__set__, 则是data descriptor, 优先于实例_ ...
- nginx平台初识(二) 浏览器 HTTP 协议缓存机制详解
1.缓存的分类 缓存分为服务端侧(server side,比如 Nginx.Apache)和客户端侧(client side,比如 web browser). 服务端缓存又分为 代理服务器缓存 和 反 ...
- 微信开发获取地理位置实例(java,非常详细,附工程源码)
在本篇博客之前,博主已经写了4篇关于微信相关文章,其中三篇是本文基础: 1.微信开发之入门教程,该文章详细讲解了企业号体验号免费申请与一些必要的配置,以及如何调用微信接口. 2.微信开发之通过代理调试 ...
- Nginx的负载均衡 - 加权轮询 (Weighted Round Robin) 下篇
Nginx版本:1.9.1 我的博客:http://blog.csdn.net/zhangskd 上篇blog讲述了加权轮询算法的原理.以及负载均衡模块中使用的数据结构,接着我们来看看加权轮询算法的具 ...