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 .
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:
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.
Tags und Links ios uitextview frame