UIButton 按鈕


宣告資料

var button = UIButton()

let WIDTH = UIScreen.main.bounds.size.width

viewDidLoad

view.backgroundColor = UIColor.lightGray

    // frame
    /*button.frame = CGRect(x: 0
                            y: 0
                            width: 100
                            height: 50)*/
    // 大小
    button.frame.size = CGSize(width: 100, 
                               height: 50)
    // 座標
    /*button.frame.origin = CGPoint(x: 0,
                                    y: 0)*/
    // 中心點
    button.center = CGPoint(x: WIDTH / 2, 
                            y: 75)
    // 背景顏色
    button.backgroundColor = UIColor.white
    // 按鈕文字
    button.setTitle("test", 
                    for: .normal)
    /* UIControlState
     .normal          普通狀態
     .highlighted     觸摸狀態
     .disabled        禁用狀態
     .selected        選擇狀態
     */
    // 文字顏色
    button.setTitleColor(UIColor.black, 
                         for: .normal)
    // 系統預設字體
    button.titleLabel?.font = UIFont.systemFont(ofSize: 15)
    // 自訂字體
    /*button.titleLabel?.font = UIFont(name: "Helvetica-Light", 
                                       size: 15)*/
    // 加入圖片
    /*button.setImage(UIImage?, 
                      for: UIControlState?)*/
    // 背景圖片
    /*button.setBackgroundImage(UIImage?, 
                                for: UIControlState?)*/
    // 觸摸狀態圖片不變暗
    //button.adjustsImageWhenHighlighted = false
    // 禁用狀態圖片不變暗
    //button.adjustsImageWhenDisabled = false
    // 點選時高亮
    //button.showsTouchWhenHighlighted = true
    // 文字水平位置
    button.contentHorizontalAlignment = .center
    /* UIControlContentHorizontalAlignment
     .center      置中
     .left        靠左
     .right       靠右
     .fill        填滿
     */

    // 文字垂直位置
    button.contentVerticalAlignment = .center
    /* UIControlContentVerticalAlignment
     .center      置中
     .left        靠左
     .right       靠右
     .fill        填滿
     */
    // 圓角, 半徑為10
    button.layer.cornerRadius = 10
    // 邊框寬度
    button.layer.borderWidth = 2
    // 邊框顏色
    button.layer.borderColor = UIColor.black.cgColor
    // 陰影顏色
    button.layer.shadowColor = UIColor.black.cgColor
    // 陰影擴散範圍
    button.layer.shadowOffset = CGSize(width: 2, 
                                       height: 2)
    // 陰影可見度
    button.layer.shadowOpacity = 1
    // 陰影圓角
    button.layer.shadowRadius = 5
    // 加入動作
    button.addTarget(self,
                     action: #selector(buttonpressed), 
                     for: .touchDown)
    /* UIControlEvents
     .touchDown           點擊
     .touchDownRepeat     點擊大於一次
     .touchDragInside     元件內拖動
     .touchDragOutside    元件外拖動
     .touchDragEnter      元件外拖動到元件內
     .touchDragExit       元件內拖動到元件外
     .touchUpInside       元件內點選並放開
     .touchUpOutside      元件外點選並放開
     .touchCancel         取消點擊
     .allTouchEvents      所有觸摸動作
     */
view.addSubview(button)

// 系統預設按鈕
let button1 = UIButton(type: .contactAdd)
    button1.center = CGPoint(x: WIDTH / 2, 
                             y: 150)
view.addSubview(button1)

let button2 = UIButton(type: .infoLight)
    button2.center = CGPoint(x: WIDTH / 2, 
                             y: 200)
view.addSubview(button2)

建立提示框動作

func buttonpressed(sender: UIButton) {
    let alert = UIAlertController(title: "點選測試",
                                  message: "",
                                  preferredStyle: .alert)
        let cancel = UIAlertAction(title: "取消",
                                   style: .cancel,
                                   handler: nil)
        alert.addAction(cancel)
    present(alert, 
            animated: true, 
            completion: nil)
}

results matching ""

    No results matching ""