ios – CALayer属性(例如:阴影)没有出现在所有UITableViewCell上

ios – CALayer属性(例如:阴影)没有出现在所有UITableViewCell上,第1张

概述所以我在原型UITableViewCell中有一个UIView.在该视图的awakeFromNib方法中,我有以下代码来制作阴影 CALayer *layer = self.layer;layer.cornerRadius = 5.0f;// Makes shadow for each cell in all and nearby table views.CGSize size = s 所以我在原型UItableVIEwCell中有一个UIVIEw.在该视图的awakeFromNib方法中,我有以下代码来制作阴影

CALayer *layer = self.layer;layer.cornerRadius = 5.0f;// Makes shadow for each cell in all and nearby table vIEws.CGSize size = self.bounds.size;CGfloat curlFactor = 15.0f;CGfloat shadowDepth = 5.0f;UIBezIErPath *path = [UIBezIErPath bezIErPath];[path movetoPoint:CGPointMake(0.0f,0.0f)];[path addlinetoPoint:CGPointMake(size.wIDth,size.height + shadowDepth)];[path addCurvetoPoint:CGPointMake(0.0f,size.height + shadowDepth)        controlPoint1:CGPointMake(size.wIDth - curlFactor,size.height + shadowDepth - curlFactor)        controlPoint2:CGPointMake(curlFactor,size.height + shadowDepth - curlFactor)];self.layer.shadowcolor = [UIcolor blackcolor].CGcolor;self.layer.shadowOpacity = 0.3f;self.layer.shadowOffset = CGSizeMake(2.0f,7.0f);self.layer.shadowRadius = 2.0f;self.layer.masksToBounds = NO;self.layer.shadowPath =  path.CGPath; //Sets a path for the shadow. Greatly enhances performance.

问题是阴影只出现在某些细胞上,而不是全部,有时似乎是随机的.我尝试将代码放在vIEwWillAppear和vIEwDIDAppear中,但它也没有在那里一起工作.有没有人知道可能导致这种情况的原因?

解决方法 我终于意识到问题是阴影没有丢失,它们只是被其他细胞重叠.

所以this answer可以解决问题(在这种情况下你需要sendSubvIEwToBack:).

仅供参考,iOS 6中的新UICollectionView将为您提供对单元z索引的更多控制,而对于iOS 6之前的支持,PSTCollectionView是一个不错的选择.

总结

以上是内存溢出为你收集整理的ios – CALayer属性(例如:阴影)没有出现在所有UITableViewCell上全部内容,希望文章能够帮你解决ios – CALayer属性(例如:阴影)没有出现在所有UITableViewCell上所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存