UITextField
さんと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
}
}
なぜ、どのように修正するには?
私はの、textColorがCGColorを取るとは思わないスウィフト3とXcode 8.2(8C38)
どのように 'nameTxt、emailTxt、cityTxt、messageTxt'が宣言されていますか? –
私はtextColorがCGColorを取るとは思わない。単に 'UIColor(white:1、alpha:0.25)'を使ってみましたか?また、クラッシュは何ですか? – Samantha
配列の型が明らかに '[UITextField]'なので、なぜあなたはかなり不特定な 'AnyObject'にキャスト(非効率的に5回!)していますか? – vadian