我有一个CAGradientLayer,没什么复杂的。
let gradient: CAGradientLayer = CAGradientLayer()
gradient.colors = [UIColor.clear.cgColor, Colors.Corporate.cgColor]
gradient.locations = [0.0 , 1.0]
gradient.startPoint = CGPoint(x: 0.0, y: 0.0)
gradient.endPoint = CGPoint(x: 0.0, y: 1.0)
gradient.frame = bounds
mainImage.layer.insertSublayer(gradient, at: 0)
我在iPhoneSE(模拟器)和iPod(真实设备)上有不同的结果......其他设备,iPhoneX(真实设备)和iPhone8(模拟器)都能正常工作。
底部的渐变叠加是不同的。有人遇到过这个问题吗?
我想这取决于图层是什么时候创建并插入到子图层结构中的。你能不能试着更新它的框架?viewWillAppear
(如果你可以从视图控制器访问该层)或类似的功能?
当父视图的边界发生变化时,这样的图层应该始终跟随父视图的边界。