我的应用有一个我在代码中制作的渐变图层。然而,当我在屏幕上显示它时,它覆盖了所有其他组件并隐藏了我的按钮,标签和图像。
如何将此图层推回以使其成为视图的背景?
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)
}
答案 0 :(得分:12)
您可以在特定索引处插入子图层。
self.view.layer.insertSublayer(gradientLayer, at: 0)
答案 1 :(得分:1)
您可以将任何索引中包含的任何子视图添加为:
self.view.layer.insertSublayer(yourLayer, at: 0)
at 也可用作 atIndex ,它表示视图的indexPath(来自视图层次结构),您要在其中添加子视图。
答案 2 :(得分:1)
我们还可以使用insertSubview
self.view.insertSubview(subview1_name, belowSubview: subview2_name)
self.view.insertSubview(subview1_name, aboveSubview: subview2_name)