有没有办法用Swift设置UIView背景颜色?
我知道在Objective-C中,你会使用self.view.backgroundColor = [UIColor redColor];
,但这在Swift中的工作方式不同。我环顾四周,因为斯威夫特只有一周左右,我找不到答案。
有没有人有什么建议?
self.view.backgroundColor = UIColor.redColor()
在Swift 3中:
self.view.backgroundColor = UIColor.red
您可以使用下面的行进入闭包(viewDidLoad
,didLayOutSubViews
等):
self.view.backgroundColor = .redColor()
编辑Swift 3:
view.backgroundColor = .red
我看到这个问题已经解决,但是,我想添加一些信息,而不是可以帮助某人。
如果你想使用十六进制来设置背景颜色,我发现这个功能和工作:
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+
试试吧,它就像一个魅力!为了我,
使用ColorLiteral以编程方式添加backgroundColor的最简单方法。
你需要添加属性ColorLiteral,Xcode会提示你一个颜色列表,你可以在其中选择任何颜色。这样做的好处是我们使用较少的代码,添加HEX值或RGB。您还将从故事板中获取最近使用的颜色。
按照步骤,
1)在viewDidLoad()中添加以下代码行,
self.view.backgroundColor = ColorLiteral
然后点击“输入”按钮。
2)显示=旁边的方框
3)当点击方框Xcode时会提示您可以选择任何颜色的整个颜色列表,您也可以设置HEX值或RGB
4)您可以成功设置颜色。
希望这有助于某人以不同的方式设置背景颜色。
如果您正在处理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)
}
}
在Swift 4中,就像Swift 3一样简单:
self.view.backgroundColor = UIColor.brown
@Miknash和@wolfgang gutierrez barrera的回应对我很有帮助。唯一的区别是我不得不在函数调用中添加rgbValue:
。
UIColorFromHex(rgbValue: 0xA6D632,alpha: 1 )
喜欢这样