尝试使用以下问题中的代码绘制阴影:如何在 UIView 下绘制阴影?
我在讨论的 UIView 子类中实现它,但是当我尝试使用它时,UIView *shadow = [[ShadowView alloc]initWithFrame:CGRectMake(100,100,100,100)];
我只得到一个黑色方块,而不是类似阴影的东西。
我在这里错过了什么吗?
尝试使用以下问题中的代码绘制阴影:如何在 UIView 下绘制阴影?
我在讨论的 UIView 子类中实现它,但是当我尝试使用它时,UIView *shadow = [[ShadowView alloc]initWithFrame:CGRectMake(100,100,100,100)];
我只得到一个黑色方块,而不是类似阴影的东西。
我在这里错过了什么吗?
我知道这是一个古老的问题,但是当我试图做同样的事情时,我通过谷歌遇到了这个问题。所以我想我会发布以防其他人有同样的问题。阅读本教程后,我终于发现了一个修复方法:http ://www.raywenderlich.com/2134/core-graphics-101-glossy-buttons
您需要取消选中Opaque,并在 IB 中将 Background 设置为Clear Color。
或者如教程中所示将它们设置在 initWithCoder
-(id) initWithCoder:(NSCoder *)aDecoder {
if ((self = [super initWithCoder:aDecoder])) {
self.opaque = NO;
self.backgroundColor = [UIColor clearColor];
}
return self;
}
是的,您可能需要在类的顶部显式添加一个#import。我之前也遇到过同样的问题,然后解决了。(虽然不能完全解释为什么)