【发布时间】:2013-06-18 06:49:56
【问题描述】:
我只想使用以下函数在视图中绘制一个简单的矩形:
- (void)drawRect:(CGRect)rect {
[super drawRect:rect];
if (self.drawTextBouble) {
[[UIColor blueColor] setFill];
UIBezierPath *aPath = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(40, 0, 230, 120) cornerRadius:12.0];
[aPath fill];
}
}
上面的代码用纯黑色背景填充视图,矩形外不透明。我该如何解决这个问题?
编辑:
以下解决方案有效,但这也有效:
[self setOpaque:NO];
【问题讨论】:
-
这是一个比我想象的更好的问题示例。存在现有的错误代码、对问题的解释和期望的结果。很遗憾我不知道答案!
-
我无法用你的代码重现问题,但也许你不应该调用
[super drawRect:rect],比较stackoverflow.com/questions/14074281/…。 -
感谢 cmets :),我试过了,但表现相同。
-
@flatronka:你确定视图的背景颜色设置为透明(“clearColor”)吗?
标签: ios objective-c core-graphics