草庐IT

CAGradientLayer

全部标签

ios - CAGradientLayer 颜色变化动画不执行

我正在尝试让一个非常基本的CAGradientLayer动画发挥作用。我有一个基本的2色CAGradientLayer设置并添加到我的UIViewController。//Setupthegradientlayer.vargradientLayer:CAGradientLayer!{letlayer=CAGradientLayer()layer.frame=self.view.boundslayer.colors=[UIColor.redColor().CGColor,UIColor.yellowColor().CGColor]layer.locations=[0.0,1.0]retu

ios - 无法显示简单的 CAGradientLayer

我只是想在我的ViewController中显示一个简单的渐变。此代码不起作用(View保持白色)。importUIKitimportQuartzCoreclassViewController:UIViewController{overridefuncviewDidLoad(){super.viewDidLoad()letly=CAGradientLayer()ly.frame=view.boundsly.colors=[UIColor.orangeColor(),UIColor.blackColor()]ly.locations=[0.0,1.0]println(view.bound

ios - 将 CGGradient 转换为 CAGradientLayer

我正在使用PaintCodeStyleKit生成一堆渐变,但PaintCode将它们导出为CGGradient。我想将这些渐变添加到layer中。是否可以将CGGradient转换为CAGradientLayer? 最佳答案 没有。CAGradientLayer的要点是你可以向它描述你想要的渐变,它会为你绘制渐变。你已经过了那一步;您已经描述了您想要的渐变(PaintCode而不是CAGradientLayer),因此您已经拥有您想要的渐变。因此,即使您想要使用CAGradientLayer也是愚蠢的,因为如果您打算这样做,为什么首

ios - 如何将 CAGradientLayer 添加到 CAShapeLayer?

我正在尝试将CAGradientLayer添加到CAShapeLayer,但渐变不符合图层的形状。相反,渐变采用UIView本身的形状。我最初尝试使用UIBezierPath进行此操作,但它也没有用。我正在尝试将渐变放入我的形状中。overridefuncdrawRect(rect:CGRect){letbounds=CGRect(x:0,y:0,width:self.bounds.width,height:self.bounds.height)letcenter=self.centerletpath=CAShapeLayer()path.bounds=boundspath.posit

ios - CAGradientLayer 导致 subview 不可见

您好iOS和Swift大师们,折腾了两天后,我拼命决定在这里问问。问题:添加CAGradientLayer时,不显示subview。详细信息:我做了一个方法来在扩展中添加一个CAGradientLayer界面View我只需在任何View上调用该方法,它本身就可以完美运行但是如果我尝试将此方法用于View层次结构中的UIView(作为背景),不幸的是所有subview都不再可见,渐变似乎“覆盖”了所有subview如果我不在容器View上调用“addGradient”方法,所有subview都会正确显示惊人的细节:虽然subview不可见,但它们以某种方式存在并且“活跃”(例如,“不可见

ios - 为 CAGradientLayer 添加 mask 使 UIBezierPath 消失

我想为带有渐变的View添加内边框。下面的代码有效并给了我这个结果importUIKitclassInnerGradientBorderView:UIView{overrideinit(frame:CGRect){super.init(frame:frame)backgroundColor=UIColor.clear}requiredinit?(coderaDecoder:NSCoder){super.init(coder:aDecoder)backgroundColor=UIColor.clear}overridefuncdraw(_rect:CGRect){super.draw(r

ios - 在 UITableViewCell 中使用时,CAGradientLayer 在 UIView 上溢出

我已将CAGradientLayer添加到UITableViewCell中已有的UIView。此UIView从UITableViewCellcontentView开始有20个trailing和leading空间。但是那个UIView在运行时会溢出。vargradientLayer:CAGradientLayer!@IBOutletweakvarview:UIView!funccreateGradientLayer(){gradientLayer=CAGradientLayer.init(layer:view.layer)gradientLayer.frame=CGRect(x:0,y:

iphone - 尝试使用 CAGradientLayer 时出现编译错误

我正在尝试使用CAGradientLayer并遇到无用的编译错误。无法弄清楚出了什么问题。到目前为止我所做的是:CAGradientLayer*gradient=[CAGradientLayerlayer];我已经导入了我收到了警告>_OBJC_CLASS_$CAGradientLayerreferencedfrom:objc-class-ref-to-CAGradientLayersymbol(s)notfound.我已经尝试过清理和构建,但没有成功,而且我似乎无法在Xcode中定位除4.1之外的任何目标欢迎任何帮助。 最佳答案

ios - 如何更改 CAGradientLayer 颜色点?

现在我有一个GA渐变层,我在其中设置了颜色,但我想将颜色点设置为(而不是顶部中心,左上角)和底部(而不是底部中心到右下角)只是为了改变一下。想法?下面是我到目前为止的代码...我包含了核心动画,因为我是颜色之间的动画。-(id)init{self=[superinit];UIView*gradientView=[[UIViewalloc]initWithFrame:CGRectMake(0,0,self.w,self.h)];[selfaddSubview:gradientView];[selfsendSubviewToBack:gradientView];topColor=[UICo

ios - swift 中的 CAGradientLayer 相当于什么?

我正在尝试移植一些创建渐变层的Objective-C代码CAGradientLayer*gradientLayer=[CAGradientLayerlayer];gradientLayer.colors=colors;gradientLayer.locations=locations;gradientLayer.frame=view.bounds;[view.layerinsertSublayer:gradientLayeratIndex:index];但是在Swift中,CAGradientLayer似乎没有静态“层”方法或构造函数。尝试将其用作类型会产生:leta:CAGradie