UIView阴影画错了

时间:2010-05-28 19:46:19

标签: iphone iphone-sdk-3.0 uiview shadow

尝试使用此问题中的代码绘制阴影:How do I draw a shadow under a UIView?

我在UIView子类中实现它,如上所述,但当我尝试使用UIView *shadow = [[ShadowView alloc]initWithFrame:CGRectMake(100,100,100,100)];时,我只得到一个黑色方块,而不是类似阴影的东西。

我在这里错过了什么吗?

2 个答案:

答案 0 :(得分:1)

我知道这是一个古老的问题,但我通过谷歌遇到它,因为我试图做同样的事情。所以我想我会发布任何其他人都有同样的问题。在阅读本教程后,我终于发现了一个修复:http://www.raywenderlich.com/2134/core-graphics-101-glossy-buttons

您需要取消选中不透明,并在IB中将背景设置为清除颜色

或者如教程中所示,在initWithCoder中设置它们

-(id) initWithCoder:(NSCoder *)aDecoder {
    if ((self = [super initWithCoder:aDecoder])) {
        self.opaque = NO;
        self.backgroundColor = [UIColor clearColor];
    }
    return self;
}

答案 1 :(得分:0)

是的,您可能需要明确地将#import添加到班级的顶部。我以前遇到过同样的问题并修复了它。 (虽然无法准确解释原因)