java draw渐变动画_使用swift在UIView draw()中绘制渐变

我想在我的所有视图中添加渐变背景 .

我想这样做而不需要在所有视图控制器中创建视图的IBOutlet的方式是从UIView创建一个新类,并在draw()内部放置在视图中生成CAGradientLayer的代码 .

因此,在界面构建器中,我只需要选择背景视图并将其类设置为我的自定义类 . 它到目前为止工作 .

我的问题是,如果我可以毫无问题地做到这一点 . 有人知道可以吗?因为从UIView继承的模型文件带有注释://如果执行自定义绘图,则仅覆盖draw() .

我不知道创建图层是否重要 . 或者,如果draw()仅适用于低级别绘图或类似的东西 . 对draw()函数的最佳用法一无所知 .

这是代码:

override func draw(_ rect: CGRect) {

let layer = CAGradientLayer()

layer.frame = CGRect(x: 0, y: 0, width: self.frame.width, height: self.frame.height)

let color1 = UIColor(red: 4/255, green: 39/255, blue: 105/255, alpha: 1)

let color2 = UIColor(red: 1/255, green: 91/255, blue: 168/255, alpha: 1)

layer.colors = [color1.cgColor, color2.cgColor]

self.layer.addSublayer(layer)

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值