мне было интересно, почему мое окно выглядит следующим образом: Почему две строки отображаются с помощью этого кода (drawRect)?
При изменении размера окна, одна линия держит растяжку в то время как другая держит статически размер и перекос.
Странная часть, что я записываю высоту и ширину окна, когда drawRect
называется.
В начале приложения метод drawRect вызывается 4 раза.
Я смотрел на это и понял, что это не фактический размер, и переехал размер окна немного и получил реальные результаты. Что странно, так это то, как он прыгал так быстро.
Странная часть как линия «призрак» по-прежнему есть, я понятия не имею, какой из них является призрак! Почему? Я изменил цвет линии, которая отображается ... и:
Тот, который статически отображается тот, который «генерируется», используя мой код каждый DrawRect.
код я использую для моего DrawRect:
- (void)drawRect:(NSRect)dirtyRect
{
NSLog(@"%f, %f", dirtyRect.size.height, dirtyRect.size.width);
NSBezierPath *line = [NSBezierPath bezierPath];
[line moveToPoint:NSMakePoint(NSMaxX([self bounds]), NSMaxY([self bounds]))];
//Sorry about formatting; SO doesn't make it easy to format.
[line lineToPoint:NSMakePoint(NSMinX([self bounds]), NSMinY([self bounds]))];
[line setLineWidth:_lwith]; /// Make it easy to see
[_lineColor set]; /// Make future drawing the color of lineColor.
[line stroke];
}
Я прошу немного объяснений, или просто что-нибудь, что поможет! Благодаря