以下是我设置边框、阴影和圆角的代码
// set border
[self.avatarImageView.layer setBorderColor: [[UIColor whiteColor] CGColor]];
[self.avatarImageView.layer setBorderWidth: 2.0];
// set shadow
[self.avatarImageView.layer setShadowOffset:CGSizeZero];
[self.avatarImageView.layer setShadowOpacity:1.0];
self.avatarImageView.clipsToBounds = NO;
// set corner
self.avatarImageView.layer.cornerRadius = 10.0;
self.avatarImageView.layer.masksToBounds = YES;
如果我只使用
set border
和set corner
的代码,它可以正常工作,就像这样:
但是如果我添加了set corner
的代码,结果会像这样(边框和角半径起作用,但阴影消失了):
然而,如果只使用set corner
的代码,它可以完美地工作。请指导我该怎么做。任何帮助都将不胜感激。更新: 按照 @ozgur 的建议,添加两行代码到我的代码中,它会给出一个非常漂亮的视图,但是阴影会变小一点。
self.avatarImageView.layer.shouldRasterize = YES;
self.avatarImageView.layer.shadowPath = [UIBezierPath bezierPathWithRoundedRect:self.avatarImageView.bounds cornerRadius:10].CGPath;
self.view
是什么? - Ozgur VatansevermasksToBounds
或者clipsToBounds
吗? - Ozgur VatansevermasksToBounds
或clipsToBounds
。 - Linhself.view
和self.avatarImageView
之间感到困惑,我已经更新了我的代码和我的图片。 - Linh