est ici un .swf (pardon, le mauvais site et swf, qui était la seule façon que je pouvais saisir ce qui se passait)texte dessin au-dessus du diviseur dans un NSSplitView, la vue de dessus occasionnellement tirer dessus
http://screencast.com/t/rzJ3b5ihSj Ce qui semble se produire, c'est que mon diviseur est parfois dessiné en premier, puis le NSView
en haut dans le NSSplitView
dessine dessus. Mais il semble incohérent, car parfois le diviseur se dessine sur le dessus.
Voici ma méthode -drawDividerInRect
, surchargée de NSSplitView
-(void) drawDividerInRect:(NSRect)aRect
{
[[NSColor colorWithRed:10.0/255.0 green:10.0/255.0 blue:10.0/255.0 alpha:0.0] set];
NSRectFill(aRect);
id topView = [[self subviews] objectAtIndex:0];
NSRect topViewFrameRect = [topView frame];
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:[NSFont fontWithName:@"Helvetica" size:26], NSFontAttributeName,[NSColor whiteColor], NSForegroundColorAttributeName, nil];
NSAttributedString * currentText=[[NSAttributedString alloc] initWithString:@"Tool Properties" attributes: attributes];
NSSize stringSize = [currentText size];
CGFloat xOffset = ([topView frame].size.width - stringSize.width)/2;
NSRect textRect = NSMakeRect(topViewFrameRect.origin.x+xOffset, topViewFrameRect.size.height+50, stringSize.width, stringSize.height);
[currentText drawInRect:textRect];
}
Comment puis-je faire si mon diviseur & texte qu'il tire sur tout le temps?