CAGradientLayer无法在iOS 7上运行(但在iOS 6上运行)

CAGradientLayer无法在iOS 7上运行(但在iOS 6上运行),第1张

概述我正在使用下面的代码向我的表格单元格添加一个渐变渐变效果. // add a layer that overlays the cell adding a subtle gradient effect CAGradientLayer* gradientLayer = [CAGradientLayer layer]; NSLog(@"%@",NSStringFromCGRect(cel 我正在使用下面的代码向我的表格单元格添加一个渐变渐变效果.

// add a layer that overlays the cell adding a subtle gradIEnt effect    CAGradIEntLayer* gradIEntLayer = [CAGradIEntLayer layer];    NSLog(@"%@",NsstringFromCGRect(cell.bounds));    gradIEntLayer.frame = cell.bounds;    gradIEntLayer.colors = @[(ID)[[UIcolor colorWithWhite:1.0f Alpha:0.2f] CGcolor],(ID)[[UIcolor colorWithWhite:1.0f Alpha:0.1f] CGcolor],(ID)[[UIcolor clearcolor] CGcolor],(ID)[[UIcolor colorWithWhite:0.0f Alpha:0.1f] CGcolor]];    gradIEntLayer.locations = @[@0.00f,@0.01f,@0.95f,@1.00f];    [cell.layer insertSublayer:gradIEntLayer atIndex:0];

代码运行后,我可以看到CAGradIEntLayer已添加到我的cell.layer中.但是当我在iOS 7模拟器上运行应用程序时,我根本看不到它.

<CALayer:0xaca1980; sublayers = (<CAGradIEntLayer: 0xaad2110>,<CALayer: 0xaca2a70>);

该代码适用于iOS 6,没有任何问题.

如果CAGradIEntLayer不再适用于iOS 7,我该怎么做才能将渐变添加到我的表格单元格中?

提前致谢.

解决方法 我通过将单元格背景颜色设置为清除来修复此问题.
在这种情况下,您可以将索引维持为0,因此将显示元素,并且也会显示渐变.

cell.backgroundcolor = [UIcolor clearcolor];[cell.layer insertSublayer:gradIEntLayer atIndex:0];
总结

以上是内存溢出为你收集整理的CAGradientLayer无法在iOS 7上运行(但在iOS 6上运行)全部内容,希望文章能够帮你解决CAGradientLayer无法在iOS 7上运行(但在iOS 6上运行)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1078611.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存