Ich arbeite an einer neuen Version meiner App und versuche, veraltete Nachrichten zu ersetzen, bin aber nicht in der Lage, über diese zu kommen.drawInRect: withAttributes vs drawInRect: withFont: lineBreakMode: Ausrichtung
Ich kann nicht herausfinden, warum drawInRect:withAttributes
nicht funktioniert. Der Code wird ordnungsgemäß angezeigt, wenn die Nachricht drawInRect:withFont:lineBreakMode:alignment
gesendet wird, funktioniert aber nicht, wenn drawInRect:withAttributes
gesendet wird.
Ich benutze die gleiche Rect und Schriftart und ich glaube, dass der gleiche Textstil ist. Die Konstanten positionieren das Rechteck direkt unter einem Bild, aber ich benutze das gleiche Rechteck für beide Aufrufe, also bin ich mir sicher, dass das Rechteck korrekt ist.
(beachten Sie, dass bs.name unten ist 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];
Das funktioniert nicht (es ist nichts auf dem Bildschirm gezeichnet) die Variablen von oben
[bs.name drawInRect:textRect
withAttributes:@{NSFontAttributeName:textFont,
NSParagraphStyleAttributeName:textStyle}];
mit
Dies funktioniert (die Zeichenfolge wird ordnungsgemäß auf dem Bildschirm gezeichnet) mit den gleichen Variablen von oben
[bs.name drawInRect:textRect
withFont:textFont
lineBreakMode:NSLineBreakByWordWrapping
alignment:NSTextAlignmentCenter];
Jede Hilfe wäre großartig. Vielen Dank.
Was meinen Sie damit, dass 'drawInRect: withAttributes:' nicht funktioniert? –
Sehr gute Frage. Entschuldigung, ich habe es nicht ausgearbeitet. Die Zeichenfolge, die in bs.name enthalten ist, wird korrekt mit der drainInRect: withFont: lineBreakMode: alignment-Nachricht auf dem Bildschirm gezeichnet, erscheint jedoch nicht, wenn drawInRect verwendet wird: withAttributes-Nachricht (nichts wird gezeichnet). –