drawInRect: withAttributes vs drawInRect: withFont: lineBreakMode: alignierung
Ich arbeite an einer neuen Version meiner App und versuche, veraltete Nachrichten zu ersetzen, komme aber nicht an dieser vorbei.
Ich kann nicht herausfinden warumdrawInRect:withAttributes
funktioniert nicht. Der Code wird korrekt angezeigt, wenndrawInRect:withFont:lineBreakMode:alignment
Nachricht wird gesendet, funktioniert aber nicht, wenndrawInRect:withAttributes
gesendet wird.
Ich verwende das gleiche Rect und die gleiche Schriftart und ich glaube, dass es sich um den gleichen Textstil handelt. Die Konstanten positionieren nur das Rechteck direkt unter einem Bild, aber ich verwende das gleiche Rechteck für beide Aufrufe, daher bin ich sicher, dass das Rechteck korrekt ist.
(beachten Sie, dassbs.name wird ein NSString-Objekt verwendet)
CGRect textRect = CGRectMake(fCol*kRVCiPadAlbumColumnWidth,
kRVCiPadAlbumColumnWidth-kRVCiPadTextLabelYOffset,
kRVCiPadAlbumColumnWidth,
kRVCiPadTextLabelHeight);
NSMutableParagraphStyle *textStyle = [[NSMutableParagraphStyle defaultParagraphStyle] mutableCopy];
textStyle.lineBreakMode = NSLineBreakByWordWrapping;
textStyle.alignment = NSTextAlignmentCenter;
UIFont *textFont = [UIFont systemFontOfSize:16];
Dies funktioniert nicht (es wird nichts auf dem Bildschirm angezeigt), wenn die Variablen von oben verwendet werden
[bs.name drawInRect:textRect
withAttributes:@{NSFontAttributeName:textFont,
NSParagraphStyleAttributeName:textStyle}];
Dies funktioniert (die Zeichenfolge wird ordnungsgemäß auf dem Bildschirm gezeichnet), wenn dieselben Variablen wie oben verwendet werden
[bs.name drawInRect:textRect
withFont:textFont
lineBreakMode:NSLineBreakByWordWrapping
alignment:NSTextAlignmentCenter];
Jede Hilfe wäre toll. Vielen Dank.