我使用QuartzCore在UITableViewCell中设置UILabel阴影:
cell.textLabel.layer.shadowColor = [[UIColor orange] CGColor];
cell.textLabel.layer.shadowOffset = CGSizeMake(0.0, 1.0);
cell.textLabel.layer.shadowRadius = 0.0;
cell.textLabel.layer.masksToBounds = NO;
但由于性能下降,我必须实现-(void)drawRect:(CGRect)rect
方法。
最近我发现UILabel的阴影可以用它的属性设置:
cell.textLabel.shadowColor = [UIColor orangeColor];
cell.textLabel.shadowOffset = CGSizeMake(0.0, 1.0);
现在我希望删除drawRect:
实现,只需通过属性设置阴影。
QuartzCore CALayer shadowRadius
默认值为3.0。
虽然UILabel没有这样的属性,但它是否意味着阴影半径等于0.0?
答案 0 :(得分:2)
答案 1 :(得分:2)
只是建议 - 在QuartzCore
单元格中使用UITableView
设置阴影会影响滚动效果。它肯定不会平滑滚动。
我建议您使用UIImageView
下面的UILabel
来产生同样的效果。它可能更多的工作是保持阴影图像更新设计的变化,但如果在减少开发人员的努力或改善用户体验之间进行权衡;我会倾向于后10次中的9次......