NSScrollViewのdocumentViewとして使用するNSViewのカスタム描画に問題があります。
これが私のdrawRectです:コード:
- (void)drawRect:(NSRect)dirtyRect
{
[[NSColor lightGrayColor] set];
NSRectFill(self.frame); // Fill entire frame
[[NSColor grayColor] set];
[NSBezierPath setDefaultLineWidth:1];
float y = 0.0f;
while (y <= self.frame.size.height) {
[NSBezierPath strokeLineFromPoint:NSMakePoint(0.0f, y) toPoint:NSMakePoint(self.frame.size.width, y)];
y += 50.0f;
}
float x = 0.0f;
while (x <= self.frame.size.width) {
[NSBezierPath strokeLineFromPoint:NSMakePoint(x, 0.0f) toPoint:NSMakePoint(x, self.frame.size.height)];
x += 50.0f;
}
}
ビューを右にスクロールするとすべて問題ありませんが、ビューを左にスクロールすると奇妙な線が表示されます。
これはキャッシュされた画像バッファか何かだと思いますが、フレーム全体をカバーする長方形を埋めているため、なぜこれが発生するのかわかりませんでした。
この問題の原因は何ですか?どうすれば解決できますか?ありがとう。