这是我的代码:
CALayer *inLayer =[CALayer layer];
inLayer.backgroundColor = [UIColor redColor].CGColor;
inLayer.frame=CGRectMake(0,0,50, 50);
inLayer.position=CGPointMake(200, 200);
inLayer.cornerRadius=25;
inLayer.masksToBounds=YES;
inLayer.shadowColor=[UIColor blackColor ].CGColor;
inLayer.shadowOffset=CGSizeMake(5,10);
inLayer.shadowOpacity = 0.8;
inLayer.contents=(id)[UIImage imageNamed:@"Close.png"].CGImage;
inLayer.name=@"Close";
[self.view.layer addSublayer:inLayer];
我没有得到影子。我想念那里的东西吗?
最佳答案
阴影绘制在层的边界之外。您必须设置 inLayer.masksToBounds = NO
才能看到阴影。
当然,这会阻止 cornerRadius
工作。
您需要使用两层:设置阴影的外层和设置masksToBounds = YES
和cornerRadius = 25
的内部子层。
关于iphone - 我没有影子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9543393/