我想更改我的UITextField
s和我的UITextView
文字顏色,但我不能。我收到錯誤:Cannot assign to immutable expression of type 'UIColor!!'
。我得到的另一個錯誤是,當試圖改變填充lineFragmentPadding
應用程序崩潰。 ):無法分配給'UIColor !!'類型的不可變表達式。
我的代碼:
override func viewDidLoad() {
super.viewDidLoad()
[nameTxt, emailTxt, cityTxt, messageTxt].forEach {
($0 as AnyObject).layer.borderWidth = 0.5; // works fine
($0 as AnyObject).layer.cornerRadius = 6; // works fine
($0 as AnyObject).layer.borderColor = UIColor(white: 0.2, alpha: 0.25).cgColor // works fine
($0 as AnyObject).textColor = UIColor(white: 1, alpha: 0.25).cgColor // error here
($0 as AnyObject).textContainer.lineFragmentPadding = 0 // Makes app crash
}
}
爲什麼,以及如何解決?
我和斯威夫特3和Xcode的8.2(8C38)
'nameTxt,emailTxt,cityTxt,messageTxt'是如何聲明的? –
我不相信textColor需要CGColor。你有沒有嘗試簡單地使用'UIColor(白色:1,alpha:0.25)'?另外,什麼是崩潰? – Samantha
由於數組的類型顯然是'[UITextField]'??因此,爲什麼要將(無效5次!)投到非常不明確的'AnyObject'上? – vadian