在我下面顯示的swift 3程序中,我想訪問計算的初始值設定項內的計算變量'darkColor'。但是SWIFT 3編譯器給我一個錯誤:實例成員「darkColor」不能在類型「LoginViewController」如何訪問swift 3中計算的初始化程序中的計算變量?
import UIKit
class LoginViewController: BaseViewController, UITextFieldDelegate {
// FIXME: - computed variables
private var darkColor: UIColor {
return UIColor(hex: 0x0083C5, alpha: 1)
}
// FIXME: - create views/computed initializers
lazy var textEmail: UITextField = {
let textField = UITextField()
textField.placeholder = "Email"
textField.font = UIFont.systemFont(ofSize: 18, weight: UIFontWeightSemibold)
textField.textColor = darkColor // here I'm getting error that "instance member 'darkColor' cannot be used on type 'LoginViewController'"
textField.keyboardType = .emailAddress
textField.autocorrectionType = .no
textField.translatesAutoresizingMaskIntoConstraints = false
textField.delegate = self
return textField
}()
let emailUnderline: UIView = {
let view = UIView()
view.backgroundColor = darkColor // here I'm getting error that "instance member 'darkColor' cannot be used on type 'LoginViewController'"
view.translatesAutoresizingMaskIntoConstraints = false
return view
}()
// FIXME: - life cycle
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = UIColor.white
}
}
你需要一個實例類實際創建計算的變量,也許用'類var'或將其移出的類,使之成爲常量,那麼你就可以訪問它 – Tj3n
@ Tj3n - 我認爲你是對的。我必須爲常量 – appleBoy21
@ Tj3n創建另一個類 - 是的,你是對的。我驗證了你的答案。請將答案發布到答案部分,以便我可以將其標記爲已接受 – appleBoy21