0

我有一个 CGPath,我想将它绘制一次到 NSView。似乎相对简单,但我还没有在 AppKit(非 iphone)中找到方法。

4

1 回答 1

1

在内部-drawRect:,您使用CGContextAddPath将其添加到上下文中,并用于CGContext(Draw|Fill|Stroke)Path绘制它。即你继承NSView,并覆盖

- (void)drawRect:(NSRect)needsDisplayInRect
{
    CGContextRef cgcontext = [[NSGraphicsContext currentContext] graphicsPort];
    CGContextAddPath(cgcontext,path); // assumes you have CGPathRef*path;
    CGContextStrokePath(cgcontext);
}

然后-drawRect:将在适当的时候被调用。您可以通过调用强制视图更新[view displayIfNeeded]

于 2010-05-12T18:17:22.977 回答