gpt4 book ai didi

ios - CAGradientLayer 不适用于 iOS 7(但适用于 iOS 6)

转载 作者:可可西里 更新时间:2023-11-01 05:09:20 26 4
gpt4 key购买 nike

我正在使用下面的代码为我的表格单元格添加微妙的渐变效果。

    // 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];

关于ios - CAGradientLayer 不适用于 iOS 7(但适用于 iOS 6),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18777870/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com