Swift - UIButton

Posted ios-development

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swift - UIButton相关的知识,希望对你有一定的参考价值。

mport UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        //创建Button类型:system,custom,contactAdd,(detailDisclosure,infoDark,infoLight效果一样),roundedRect
        let button = UIButton(type: .custom)
        //设置Button位置
      button.frame = CGRect(x: 150, y: 250, width: 100, height: 100)
        //设置按钮文字
        button.setTitle("按钮", for: .highlighted)//有三种状态:普通状态:normal,触摸状态:hightlighted禁用状态:disabled
        //设置按钮文字
        button.setTitleColor(UIColor.black, for: .normal)//有三种状态
        //设置按钮文字阴影
        button.setTitleShadowColor(UIColor.gray, for: .normal)
        //设置按钮字体和大小
        button.titleLabel?.font = UIFont.systemFont(ofSize:11)//系统字体
        button.titleLabel?.font = UIFont(name: "Farah", size: 11)//自定义字体
        //设置按钮背景颜色
        button.backgroundColor = UIColor.orange
        //设置按图案(如果自定义图标就不需要设置Button类型)
        button.setImage(UIImage(named:"icon"), for: .normal)
        button.adjustsImageWhenHighlighted = false//使触摸模式下按钮图标也不会变半透明
        button.adjustsImageWhenDisabled = false//是触摸模式下按钮图标也不会变半透明
        //保留图案本色(当Button类型为custom时无需次代码)
        let image = UIImage(named: "icon")?.withRenderingMode(.alwaysOriginal)
        button.setImage(image, for: .normal)
        //设置按钮背景图片
        button.setBackgroundImage(UIImage(named: "Image"), for: .normal)
        //按钮文字过长处理方法
        button.titleLabel?.lineBreakMode = .byClipping//其他处理方法详情请看Label章节
        //按钮触摸点击事件
        button.addTarget(self, action: #selector(ViewController.TapButton), for: .touchUpInside)
//        touchDown:单点触摸按下事件,点触屏幕
//        touchDownRepeat:多点触摸按下事件
//        touchDragInside:触摸在控件内拖动时
//        touchDragOutside:触摸在控件外拖动时
//        touchDragEnter:触摸从控件之外拖动到内部时
//        touchDragExit:触摸从控件内部拖动到外部时
//        touchUpInside:在控件之内触摸并抬起事件
//        touchUpOutside:在控件之外触摸抬起事件
//        touchCancel:触摸取消事件,即一次触摸因为放上太多手指而被取消,或者电话打断
        
        //添加Button到视图中
        self.view.addSubview(button)

    }
    @objc func TapButton()
    {
        print("你点击了此按钮")
    }
    
}

以上是关于Swift - UIButton的主要内容,如果未能解决你的问题,请参考以下文章

Swift:UIButton 自定义

swift 在代码中将生成的imageView变成UIButton

无法让 UIButton 在 Swift 4 中调用代码块

Swift3 中心 UIbutton

排队UIButton的CenterYAnchor到UIPageControl Swift

为啥 Swift4 会强制转换 UIButton 数组!到 [UIButton?] 类型?