0
我有這個基類BaseController
,我改變視圖背景顏色無法更改視圖背景顏色
self.view.backgroundColor =
UIColor(red: 0/255, green: 255/255, blue: 0/255, alpha: 0)
在viewDidLoad()
方法
import UIKit
class BaseController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor(red: 0/255, green: 255/255, blue: 0/255, alpha: 0)
}
func UIColorFromHex(rgbValue:UInt32, alpha:Double=1.0)->UIColor {
let red = CGFloat((rgbValue & 0xFF0000) >> 16)/256.0
let green = CGFloat((rgbValue & 0xFF00) >> 8)/256.0
let blue = CGFloat(rgbValue & 0xFF)/256.0
return UIColor(red:red, green:green, blue:blue, alpha:CGFloat(alpha))
}
}
這裏是MainController
延伸BaseController
,是我的入口點
import UIKit
class MainController: BaseController {
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor(red: 0/255, green: 37/255, blue: 0/255, alpha: 0)
}
}
但是,除非在公用程序窗格中手動選擇顏色,否則MainController
視圖的背景顏色不會更改。
如何使用父類動態更改背景顏色?
實際上,你在'MainController'看到什麼顏色的?它是「BaseController」的明亮的綠色還是其他一些默認顏色(是白色還是黑色)? – rmaddy
@rmaddy我將默認顏色設置爲無顏色(在實用程序窗格中帶有紅色條紋),並且我看到動態應用的顏色(在本例中爲綠色)不會覆蓋通過實用程序窗格設置的顏色,如果這是有道理的。 –
您將alpha設置爲0. –