我正在尝试在运行时生成具有渐变色背景(纯色到透明)的视图。有没有办法做到这一点?
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 50)]; CAGradientLayer *gradient = [CAGradientLayer layer]; gradient.frame = view.bounds; gradient.colors = @[(id)[UIColor whiteColor].CGColor, (id)[UIColor blackColor].CGColor]; [view.layer insertSublayer:gradient atIndex:0];
let view = UIView(frame: CGRect(x: 0, y: 0, width: 320, height: 50)) let gradient = CAGradientLayer() gradient.frame = view.bounds gradient.colors = [UIColor.white.cgColor, UIColor.black.cgColor] view.layer.insertSublayer(gradient, at: 0)
信息 : 使用 startPoint 和 endPoint 改变渐变的方向。
如果在此添加了任何其他视图UIView(例如 a UILabel),您可能需要考虑将这些视图的背景颜色设置为UIView,[UIColor clearColor]以便呈现渐变视图而不是子视图的背景颜色。使用clearColor对性能有轻微影响。
UIView
UILabel
[UIColor clearColor]
clearColor