【问题标题】:What's the equivalent of CAGradientLayer in swift?swift中的CAGradientLayer相当于什么?
【发布时间】:2014-06-04 00:31:48
【问题描述】:

我正在尝试移植一些创建渐变层的 Objective-C 代码

CAGradientLayer *gradientLayer = [CAGradientLayer layer];
gradientLayer.colors = colors;
gradientLayer.locations = locations;
gradientLayer.frame = view.bounds;

[view.layer insertSublayer:gradientLayer atIndex:index];

但是在 Swift 中,CAGradientLayer 似乎没有静态“层”方法或构造函数。尝试将其用作类型会产生:

let a:CAGradientLayer? = null

错误:使用模块“CAGradientLayer”作为类型

据我所知,CAGradientLayer 不是我可以导入的模块。在 Swift 中做渐变层的正确方法是什么?

【问题讨论】:

  • 不能分配给 null 除非它是一个可选的,首先。您是否尝试分配给初始渐变层?
  • 顺便说一句,使用 nil,而不是 null。

标签: ios swift ios8 core-animation


【解决方案1】:

你需要先导入 QuartzCore:

import QuartzCore

let a:CAGradientLayer = CAGradientLayer()

【讨论】:

  • 您也可以省略类型(即let a = CAGradientLayer())。
猜你喜欢
  • 2022-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-15
  • 2020-04-26
  • 2019-09-12
相关资源
最近更新 更多