水平渐变效果很好。有没有办法从水平渐变中获得垂直颜色渐变?我已经看到了一个相关的问题,他们通过旋转框架来做到这一点。
有没有更简单的方法来实现垂直渐变?
水平渐变效果很好。有没有办法从水平渐变中获得垂直颜色渐变?我已经看到了一个相关的问题,他们通过旋转框架来做到这一点。
有没有更简单的方法来实现垂直渐变?
默认的startPoint和endPoint将使渐变从上到下显示您的颜色(在我看来是垂直渐变)。如果您希望渐变从左到右显示(在我看来,这是一个水平渐变),请在您的CAGradientLayer上使用此代码:
[gradientLayer setStartPoint:CGPointMake(0.0, 0.5)];
[gradientLayer setEndPoint:CGPointMake(1.0, 0.5)];
不需要 3D 变换。
旋转 90º 怎么样?
编辑 从您的评论来看,您似乎是通过CAGradientLayer
. CAGradientLayer
是 的子类CALayer
,它有一个transform
属性。此transform
属性采用 a CATransform3D
,它是一个结构,表示要应用于图层的某种线性变换(例如缩放、平移或旋转)。
因此,实际上您只需要进行旋转CATransform3D
并将其设置transform
为CAGradientLayer
.
您也可以通过摆弄startPoint
and来完成这项工作endPoint
(实际上可能更简单)。