2017年11月13日 星期一

Swift 4 將常用到的顏色製作成色塊

      我相信很多人在開發的時候都跟我一樣遇到過物件要改變顏色時美編所給的色碼都必須另外寫一段RBG或其他的方法。
      但在Swift 4(iOS11 & xCode9)出來一個新的小功能,就是自定義色塊。
      這邊就點單的說該如何製作,首先建立一個新的專案,然後選到Assets,在Assets左邊欄下方的+按下去後有一個New Color Set點選下去,如下圖:
 然後直接點選預設色塊後設定自己要的顏色,並在最上方欄位命名。

這樣完成後就能使用UIColor(named: String);
簡單一點的範例如下,我這邊為了讓大家看到改變所以做了兩個UIButton


因為這只是簡單的測試給大家看,所以程式碼也非常簡單,有些地方可以不用去執著他。只要記得當你要使用那個顏色時呼叫UIColor(named: String);即可
程式碼如下:
import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var BG2: UIButton!
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        BG2.tintColor = UIColor.white
        touch(Btn: BG2)
        
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }

    @IBAction func BG1(_ sender: UIButton) {
        let BG1_Color = UIColor(named: "新增的色塊");
        self.view.backgroundColor = BG1_Color
        BG2.tintColor = UIColor.white
    }
    
    @IBAction func BG2(_ sender: UIButton) {
        let BG2_Color = UIColor(named: "BG2_Color");
        self.view.backgroundColor = BG2_Color
        BG2.tintColor = UIColor.yellow
    }
    
    func touch(Btn: UIButton){
        Btn.tintColor = UIColor.blue
    }
}


執行後結果如下圖:

希望大家會喜歡,並在必要的時候善用此功能^^