Pertanyaan Kesalahan Swift: Tidak dapat menetapkan nilai tipe UIColor untuk mengetik CGColor


Saya memiliki dua bidang masukan dalam pandangan saya, loginEmailInput dan loginPasswordInput.

Saya mencoba mengubah warna perbatasan. Kode saya di ViewController.swift terlihat seperti ini:

import UIKit

class ViewController: UIViewController, UITextFieldDelegate {

    @IBOutlet weak var loginPasswordInput: UITextField!
    @IBOutlet weak var loginEmailInput: UITextField!

    let borderColor : UIColor = UIColor(red:0.39, green:0.76, blue:0.37, alpha:1)
    loginEmailInput.layer.borderColor = borderColor
    loginPasswordInput.layer.borderColor = borderColor

    override func viewDidLoad() {
        super.viewDidLoad()

        //etc....

Namun, kedua garis ini menunjukkan kesalahan:

loginEmailInput.layer.borderColor = borderColor
loginPasswordInput.layer.borderColor = borderColor

Kesalahannya adalah:

Tidak dapat menetapkan nilai tipe UIColor untuk mengetik CGColor

Bagaimana saya mengatasi masalah ini?


9
2018-06-03 18:05


asal


Jawaban:


Untuk Swift 3: 

UIColor.blue.cgColor

Untuk Penggunaan CALayer

UIColor.blueColor().CGColor  (example)

Secara umum, lapisan / CALayers menggunakan CG (Core Graphic) warna. Sedangkan untuk sesuatu seperti latar belakang tampilan, Anda bisa menggunakan sesuatu seperti view.backgroundColor = UIColor.blueColor() . UIColor adalah bagian dari UIKit FrameWork (NSObject), CG adalah bagian dari Core Graphic (CF / Core Foundation Library)

Untuk lapisan, Anda lakukan

UIColor.blueColor().CGColor

39
2018-06-03 18:09