我有一个在方法上绘制了10像素边框的视图。
我需要更新边框颜色,然后使用[self setNeedsDisplay]
进行重绘
风景。
由于我只需要更新我想要使用的边框:[self setNeedsDisplayInRect:rect]
所以它只会绘制边框。
如何才能获得与视图其他区域无关的矩形?
由于 沙尼
答案 0 :(得分:2)
你不能因为CGRect
是矩形,所以它是凸形的,不能有洞。
但是你可以将边框分解为四个矩形,然后调用[self setNeedsDisplayInRect:rect]
四次。
此外,如果您导入QuartzCore
,则可以使用视图图层的属性borderColor
:
#import <QuartzCore/QuartzCore.h>
// ...
view.layer.borderWidth = 10;
view.layer.borderColor = [UIColor redColor].CGColor;
// And to change it later
view.layer.borderColor = [UIColor greenColor].CGColor;
答案 1 :(得分:0)
你可以在边框的每个部分(顶部,右边,底部和左边)获得四个CGRect,并且每个部分都调用四次。