//设置全局变量,将下面的替换即可
    //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的更多相关文章

  1. iOS Swift 模块练习/swift基础学习

    SWIFT项目练习     SWIFT项目练习2 iOS Swift基础知识代码 推荐:Swift学习使用知识代码软件 0.swift中的宏定义(使用方法代替宏) 一.视图  +控件 1.UIImag ...

  2. swift基础:第六部分:类与对象

    http://reactnative.cn/docs/0.24/getting-started.html#content(react Native 开发文档) 互联网这个时代,你松懈一天,就会有很多很 ...

  3. swift基础:第二部分:函数和闭包

    今天本来想利用上午的时间本来打算将swift基础部分学习完的,不巧的是,后台来和我讨论用户评价的接口,讨论过后,商讨出一种可行的方案,十几分钟时间过去了,我拿到将接口介入到已经完成的页面中,完美,终于 ...

  4. Swift基础语法学习总结(转)

    Swift基础语法学习总结 1.基础  1.1) swift还是使用// 和/* */ 来注释,并且/* */允许多行注释. 1.2) swift使用print和println打印,它的传参是一个泛型 ...

  5. Swift基础语法学习总结

    Swift基础语法学习总结Swift高级语法学习总结Swift语法总结补充(一) 1.基础  1.1) swift还是使用// 和/* */ 来注释,并且/* */允许多行注释. 1.2) swift ...

  6. swift -- 基础

    swift -- 基础 1.常量和变量 常量: let 变量: var 2.声明常量和变量 常量的声明: let let  a = 1         //末尾可以不加分号,等号两边的空格必须对应(同 ...

  7. Swift基础学习

    Swift基础学习  http://c.biancheng.net/cpp/html/2242.html 这个网站最近看了一下,对于基本语法解释概括的相对全面,如同重新练习一遍OC似的,挺全面的,谢谢 ...

  8. Swift基础之使用Alamofire库进行网络请求和断点下载

    好久没有写过Swift相关的文章博客了,这里我就展示一下关于使用Alamofire库的方法 1.什么是Alamofire (1)Alamofire 的前身是 AFNetworking.AFNetwor ...

  9. 第三篇、Swift基础学习

    1.常量与变量 什么是常量和变量 在Swift中规定:在定义一个标识符时必须明确说明该标识符是一个常量还是变量 使用let来定义常量,定义之后不可以修改 使用var来定义变量,定义之后可以修改 变量的 ...

随机推荐

  1. 防止SpringMVC拦截器拦截js等静态资源文件

    SpringMVC提供<mvc:resources>来设置静态资源,但是增加该设置如果采用通配符的方式增加拦截器的话仍然会被拦截器拦截,可采用如下方案进行解决: 方案一.拦截器中增加针对静 ...

  2. webpack 命令行 传入自定义变量

    https://github.com/webpack/webpack/issues/2254 --env 变量 Yes this is intended. Custom argumens can be ...

  3. Kafka系列之-自定义Producer

    前面已经讲到了,在Kafka中,Message是由Producer产生的,Producer产生的Message会发送到Topic的指定Partition中.Producer可以有多种形式,也可以由用户 ...

  4. Hadoop就业面试题

    ----------------------------------------------------------------------------- [申明:资料来源于互联网] 本文链接:htt ...

  5. SMON功能-SMON_SCN_TIME字典基表

    SMON后台进程的作用还包括维护SMON_SCN_TIME基表. SMON_SCN_TIME基表用于记录过去时间段中SCN(system change number)与具体的时间戳(timestamp ...

  6. JAVA面向对象-----访问修饰符

    访问修饰符是用来控制类.属性.方法的可见性的关键字称之为访问修饰符. 1.public 一个类中,同一包中,子类中,不同包中 2.protected 一个类中,同一包中,子类中 3.default 一 ...

  7. android的activity栈管理

    在进行BlackBerry程序开发的时候,BlackBerry提供了一个管理Screen的栈,用来从任何地方来关闭位于最上一层的Screen,使用UiApplication.getUiApplicat ...

  8. JAVA面向对象-----构造方法

    我们人出生的时候,有些人一出生之后再起名字的,但是有些人一旦出生就已经起好名字的.那么我们在java里面怎么在对象一旦创建就赋值呢? 构造方法作用 构造方法作用:对对象进行初始化. 构造函数与普通的函 ...

  9. ORACLE数据库学习之备份与恢复

     oracle数据库的备份与恢复 第一部分:数据库的备份 备份的必要性 因为各种人为或外界的因素可能会造成数据库中灾难性的数据丢失,为了保证数据库中数据的安全,必须采取备份措施保证RDBMS中包含 ...

  10. C++对C的函数拓展 - 占位参数

    函数占位参数 占位参数只有参数类型声明,而没有参数名声明 一般情况下,在函数体内部无法使用占位参数 demo #include <iostream> using namespace std ...