2015-10-12 138 views
0

我想在主视图中以编程方式更改背景的颜色(我使用Swift创建应用程序)。我尝试将此代码放在viewDidLoad()中,但它不起作用。什么是正确的方法来做到这一点?如何以编程方式更改Swift中tvOS的背景颜色?

override func viewDidLoad() { 
    super.viewDidLoad() 
    ... 
    let myBackground = UIView() 
    let colorWhite = UIColor(red: 255, green: 255, blue: 255, alpha: 1) 
    myBackground.backgroundColor = colorWhite 
    ... 
    } 
} 

回答

3

您正在创建一个新的子视图,这是不添加到您的视图堆栈呢。相反,它是简单得多:

override func viewDidLoad() { 
    super.viewDidLoad() 
    view.backgroundColor = UIColor.whiteColor() 

    // Or with RGB: 
    view.backgroundColor = UIColor(red: 142/255.0, green: 142/255.0, blue: 147/255.0, alpha: 1.0) 
} 
+0

嗨安东尼,感谢您的帖子。如果我使用预设组件值,代码工作正常。如果我想使用自定义颜色,如:红色:142,绿色:142,蓝色:147,alpha:1,您建议如何继续? – Cue

+0

查看我更新的答案! – Antoine

+0

谢谢安托万! – Cue

2

你也可以改变背景颜色取决于什么时候人观看(上午或下午):

var t = time(nil) 
    var tmValue = tm() 
    localtime_r(&t, &tmValue) 
    let hour = tmValue.tm_hour 
    if hour > 12 { 
     view.backgroundColor = UIColor.brownColor() 
    } else { 
     view.backgroundColor = UIColor.whiteColor() 
    } 
相关问题