[英]Customize Control View appearance in xCode
我正在为 OSX 创建一个应用程序,我唯一需要的是删除我的应用程序 window 的背景颜色。
如果我运行该应用程序,它将出现一个 window,可能是白色或黑色(Aqua,Dark Aqua)。
所以,我尝试进入“ViewController.swift”文件并编写了这段代码
class ViewController: NSViewController {
override func viewDidLoad() {
super.viewDidLoad()
// tell the controller's view to use a CALayer as its backing store
view.wantsLayer = true
// change the background color of the layer
view.layer?.backgroundColor = NSColor.red.cgColor
}
}
例如,通过这种方式,我将背景颜色变为红色。 但是,这不是我想要的。 所以我尝试了另一种方式(使用 RGBA 颜色)
class ViewController: NSViewController {
override func viewDidLoad() {
super.viewDidLoad()
// tell the controller's view to use a CALayer as its backing store
view.wantsLayer = true
// change the background color of the layer
view.layer?.backgroundColor = CGColor(red: 255/255, green: 0/255, blue: 0/255, alpha: 1)
}
}
我看到降低'alpha'值,不透明度也会降低。 所以,我尝试了
CGColor(red: 255/255, green: 0/255, blue: 0/255, alpha: 0)
红色消失了,但现在您可以看到 ViewController 的白色(或黑色)颜色。
我知道我只是用颜色创建了另一个图层(如 ImageView),但我没有修改 ViewController 背景。 有没有办法我可以做到这一点? 或者这是不可能的?
我已经找到了解决方案。 只是 go 到“ViewController.swift”文件,然后写这个
class ViewController: NSViewController {
override func viewWillAppear() {
super.viewWillAppear()
view.window?.isOpaque = false
view.window?.backgroundColor = NSColor(red: 1, green: 0.5, blue: 0.5, alpha: 0.0)
}
}
如果您想更改颜色,只需修复红色、绿色、蓝色值。 alpha 值决定透明度。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.