Wie erstelle ich eine UITextView, die Textzeilen automatisch umschließt?

9

Ich erstelle eine App, die programmgesteuert ein UITextView erstellt. Das Problem ist, wenn der Benutzer Text eingibt oder die App den Text einstellt, werden die Wörter über eine Zeile und über den Bildschirm verteilt, anstatt zur nächsten Zeile zu wechseln. Wenn ich einen UITextView mit Interface Builder erstelle, wird der Text automatisch umbrochen, aber nicht, wenn er programmgesteuert erstellt wird.

Code:

%Vor%     
Greg 22.07.2011, 01:51
quelle

3 Antworten

2

UITextView und UITextField sind unterschiedliche Klassen. UITextField ist eine einzelne Zeile und UITextView ist mehrzeilig. Erstellen Sie eine UITextView anstatt einer UITextField programmatisch und Sie haben Ihr Problem gelöst, das ich erwarte.

    
mxcl 22.07.2011 01:59
quelle
2

Verfügbar seit iOS 7:

%Vor%     
Vladimir Grigorov 06.12.2015 15:05
quelle
0

Der gesamte Punkt von UITextView besteht darin, mehrere Textzeilen zuzulassen. Aus der Dokumentation:

  

Die Klasse UITextView implementiert das Verhalten für einen scrollbaren,   mehrzeiliger Textbereich Die Klasse unterstützt die Anzeige von Text mit a   benutzerdefinierte Schriftart, Farbe und Ausrichtung und unterstützt auch Textbearbeitung. Sie   Verwenden Sie in der Regel eine Textansicht, um mehrere Textzeilen anzuzeigen, z   wenn der Text eines großen Textdokuments angezeigt wird.

Da UITextView von UIScrollView erbt, können Sie möglicherweise die Zusammenarbeit erzwingen, indem Sie das horizontale Scrollen deaktivieren. Zu diesem Zweck möchten Sie contentSize , z. B.

, festlegen %Vor%

Damit wird die Breite auf 210 festgelegt und die Höhe kann zu 480 verschoben werden. Da Sie textView auf Größe (210,60) einstellen, sollte dies das vertikale Scrollen, aber nicht das horizontale Scrollen ermöglichen.

    
PengOne 22.07.2011 02:01
quelle

Tags und Links