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 に答える