清除IBDesignable视图具有黑色背景

时间:2015-01-02 17:20:51

标签: ios objective-c swift interface-builder ibdesignable

我正在尝试创建一个IBDesignable类,它在Interface Builder中呈现时可以具有透明背景。到目前为止,我已经有了不透明的黑色背景。我已经设置了一个简单的问题演示:

我在Interface Builder中的这个场景中放置了一个UIView。您无法看到它,因为它的背景很清晰。这就是场景应该的样子。

A screenshot of an empty scene in interface builder

这个屏幕截图的唯一区别是我将以前看不见的视图的类设置为'DesignableView'。

A screen shot of an Interface Builder scene with a black box in the middle

以下是DesignableView类的完整实现:​​

#import <UIKit/UIKit.h>

IB_DESIGNABLE
@interface DesignableView : UIView
@end

@implementation DesignableView
- (void)drawRect:(CGRect)rect {
    //rendering code goes here
}
@end

有没有办法让IBDesignable视图具有正确,透明的背景?

1 个答案:

答案 0 :(得分:10)

我记得我是如何解决这个问题的。您需要覆盖layoutSubviews

- (void)layoutSubviews
{
    [super layoutSubviews];

    self.backgroundColor = [UIColor clearColor];
}