当我程序化地将 UIView
添加到视图控制器中时,我无法将其背景颜色更改为任何其他颜色,它始终保持为黑色。
- (void)drawRect:(CGRect)rect
{
// Drawing code
self.backgroundColor = [UIColor blueColor];
UIBezierPath *path = [[UIBezierPath alloc] init];
[path moveToPoint:CGPointMake(100, 33)];
[path addLineToPoint:CGPointMake(200, 33)];
path.lineWidth = 5;
[[UIColor redColor] setStroke];
[path stroke];
}
当我将drawrect:
注释掉并在初始化器中添加self.backgroundColor = [UIColor blueColor];
时,颜色会更改:
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
self.backgroundColor = [UIColor blueColor]
}
return self;
}
为什么会这样,我需要做出什么改变呢?实际上,我希望背景是透明的。
isOpaque
设置为true
还是false
。 - K.F