NSScrollerのグラフィカルなグリッチ/ラグ
-
05-07-2019 - |
質問
次のNSScrollerサブクラスがあり、丸い白いノブで矢印/スロット(背景)のないスクロールバーを作成します:
@implementation IGScrollerVertical
- (void)drawKnob
{
NSRect knobRect = [self rectForPart:NSScrollerKnob];
NSRect newRect = NSMakeRect(knobRect.origin.x, knobRect.origin.y, knobRect.size.width - 4, knobRect.size.height);
NSBezierPath *path = [NSBezierPath bezierPathWithRoundedRect:newRect xRadius:7 yRadius:7];
[[NSColor whiteColor] set];
[path fill];
}
- (void)drawArrow:(NSScrollerArrow)arrow highlightPart:(int)flag
{
// We don't want arrows
}
- (void)drawKnobSlotInRect:(NSRect)rect highlight:(BOOL)highlight
{
// Don't want a knob background
}
@end
これはすべて正常に機能しますが、スクローラーを使用すると顕著な遅延があります。このビデオをご覧ください:
私が間違っていることについて混乱しています、何か提案はありますか?
解決
問題を修正し、drawKnobSlotInRectの四角形を埋めるだけでした:
所属していません StackOverflow