UIView在Swift中的背景颜色

有没有办法使用Swift设置UIView背景颜色?

我知道在Objective-C中,你会使用self.view.backgroundColor = [UIColor redColor]; ,但是这在Swift中的工作方式并不一样。 我环顾四周,因为斯威夫特只有一个星期左右,我找不到答案。

有没有人有什么build议?

 self.view.backgroundColor = UIColor.redColor() 

在Swift 3:

 self.view.backgroundColor = UIColor.red 

你可以使用下面的行进入一个闭包( viewDidLoaddidLayOutSubViews等):

 self.view.backgroundColor = .redColor() 

编辑斯威夫特3:

 view.backgroundColor = .red 

我看到这个问题已经解决了,但是,我想添加一些信息而不是帮助某人。

如果你想用hex设置背景颜色,我发现这个function和工作:

 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)) } 

我使用这个函数如下:

 view.backgroundColor = UIColorFromHex(0x323232,alpha: 1) 

有时你必须使用self

 self.view.backgroundColor = UIColorFromHex(0x323232,alpha: 1) 

那么,我希望这可以帮助别人。

对不起,我的英语不好。

这个工作在iOS 7.1+上

如果您正在处理RGB值,则可以使用此扩展名替代。

 extension UIColor { static func rgb(red: CGFloat, green: CGFloat, blue: CGFloat) -> UIColor { return UIColor(red: red/255, green: green/255, blue: blue/255, alpha: 1) } }