boundingRectWithSize berücksichtigt das Umbrechen von Wörtern nicht

8

Ich erstelle ein UITextView, füge Text hinzu und lege es in die Ansicht (mit einem Container)

%Vor%

Ich erhalte dann die Größe für die Verwendung mit einer Schaltfläche und füge sie der UITextView

hinzu %Vor%

Dies funktioniert in meisten Fällen . Dies wird \ n Zeilenumbrüche berücksichtigen (wie ich es in meinem stringWithFormat hinzugefügt habe), aber es wird nicht berücksichtigt, dass Zeilenumbrüche automatisch von der Textansicht hinzugefügt werden. Wenn also lyrics eine Zeile hat, die nicht auf den Bildschirm passt, wird sie vom UITextView umgebrochen (wie es sein sollte), aber size ist jetzt etwas kürzer, als es sein sollte, weil es den Text-Ansichten-Umbruch nicht berücksichtigt hat .

    
vqdave 16.12.2013, 02:23
quelle

3 Antworten

2

Habe etwas mehr recherchiert und letztendlich das gefunden.

%Vor%

Hoffe das hilft jemandem da draußen!

    
vqdave 29.03.2014, 14:27
quelle
6

Sie können boundingRectWithSize anweisen, die Zeichenfolge im Word-Wrapping-Modus zu verarbeiten. Sie müssen dem Attributparameter ein NSParagraphStyle -Attribut hinzufügen, dessen lineBreakMode auf NSLineBreakByWordWrapping gesetzt ist. Also:

%Vor%

Verwenden Sie dann attr als Attribut-Argument für boundingRectWithSize .

Sie können diese Technik leicht erweitern / verallgemeinern, um andere Attribute zu lesen, einschließlich bestehender Absatzstilattribute, aus welcher Quelle auch immer sinnvoll.

    
JulianSymes 10.06.2014 19:10
quelle
3

Sollte (NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading) für options -Parameter verwenden.

    
samthui7 12.04.2016 10:07
quelle

Tags und Links