将渐变层推到背景 swift
Push gradient layer to background swift
我的应用程序有一个我用代码制作的渐变层。然而,当我在屏幕上显示它时,它覆盖了所有其他组件并隐藏了我的按钮、标签和图像。
如何将此图层推回以使其成为视图的背景?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//creating color gradient
let topColor = UIColor(red: 69/255, green: 140/255, blue: 68/255, alpha: 1).CGColor
let bottomColor = UIColor(red: 143/255, green: 239/255, blue: 141/255, alpha: 1).CGColor
let gradientLayer = CAGradientLayer()
gradientLayer.frame = self.view.frame
gradientLayer.colors = [topColor,bottomColor]
gradientLayer.locations = [0.1,1.0]
self.view.layer.addSublayer(gradientLayer)
}
您可以在特定索引处插入子层。
self.view.layer.insertSublayer(gradientLayer, at: 0)
您可以将您在任何索引处的任何子视图添加为:
self.view.layer.insertSublayer(yourLayer, at: 0)
at 也可以用作 atIndex,它表示视图的 indexPath(来自视图层次结构),您可以在其中想要添加您的子视图。
我们还可以使用 insertSubview
在任何其他视图下方或上方添加子视图
self.view.insertSubview(subview1_name, belowSubview: subview2_name)
self.view.insertSubview(subview1_name, aboveSubview: subview2_name)
我的应用程序有一个我用代码制作的渐变层。然而,当我在屏幕上显示它时,它覆盖了所有其他组件并隐藏了我的按钮、标签和图像。
如何将此图层推回以使其成为视图的背景?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
//creating color gradient
let topColor = UIColor(red: 69/255, green: 140/255, blue: 68/255, alpha: 1).CGColor
let bottomColor = UIColor(red: 143/255, green: 239/255, blue: 141/255, alpha: 1).CGColor
let gradientLayer = CAGradientLayer()
gradientLayer.frame = self.view.frame
gradientLayer.colors = [topColor,bottomColor]
gradientLayer.locations = [0.1,1.0]
self.view.layer.addSublayer(gradientLayer)
}
您可以在特定索引处插入子层。
self.view.layer.insertSublayer(gradientLayer, at: 0)
您可以将您在任何索引处的任何子视图添加为:
self.view.layer.insertSublayer(yourLayer, at: 0)
at 也可以用作 atIndex,它表示视图的 indexPath(来自视图层次结构),您可以在其中想要添加您的子视图。
我们还可以使用 insertSubview
self.view.insertSubview(subview1_name, belowSubview: subview2_name)
self.view.insertSubview(subview1_name, aboveSubview: subview2_name)