我有一个按钮,我正在添加一个像这样的阴影:
b.backgroundColor = [UIColor colorWithRed:0.820 green:0.878 blue:0.941 alpha:1.000];
b.layer.cornerRadius = 3;
b.layer.shadowOffset = CGSizeMake(2, 2);
b.layer.shadowOpacity = 0.2;
b.layer.shadowRadius = 0;
这很有效:
如果我像这样使用阴影路径:
b.layer.shadowPath = [UIBezierPath bezierPathWithRoundedRect:b.bounds cornerRadius:b.layer.cornerRadius].CGPath;
视网膜设备上的阴影模糊:
在非视网膜设备上没问题,如果shadowRadius
不为零,似乎可以正常工作。我已尝试将contentsScale
和rasterizationScale
设置为2,但不会影响阴影。
还有其他想法吗?
答案 0 :(得分:4)
从iOS 9.0开始,contentsScale
的{{1}}属性也会影响CALayer
的光栅化比例。换句话说,将图层shadowPath
设置为屏幕比例将解决您的问题。