gpt4 book ai didi

objective-c - Objective-C - CAGradientLayer 覆盖 UILabel 中的文本?

转载 作者:太空狗 更新时间:2023-10-30 03:22:02 31 4
gpt4 key购买 nike

由于某些原因 CAGradientLayer 覆盖了我的文本,我正在尝试向我的 UILabel 添加渐变图层。我做错了什么吗

- (void)viewDidLoad {
[super viewDidLoad];

CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = CGRectMake(0, 0, myLabel.frame.size.width, myLabel.frame.size.height);
gradient.colors = myColors;
[myLabel.layer insertSublayer:gradient atIndex:0];
}

最佳答案

CAGradientLayer 覆盖了标签的文本,因为文本是由您通过添加子层明确覆盖的超层的内容绘制的。

最简单的解决方案是使用两个 View 。一个 UIView 子类,您可以在其中覆盖 +[UIView layerClass] 并返回一个 [CAGradientLayer]。添加一个好的初始化方法来设置你的渐变。

下一个 pup 添加 UILabel 作为自定义渐变 View 的 subview 。

关于objective-c - Objective-C - CAGradientLayer 覆盖 UILabel 中的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7209407/

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