Ich ziele nur auf iOS7.
Ich möchte ein UITextView
"skalieren", wenn die Tastatur angezeigt wird, so dass der gesamte Text sichtbar ist, anstatt hinter der Tastatur verborgen zu sein.
Ich habe ein paar verschiedene Ansätze dazu in Betracht gezogen ...
1) Ändern Sie den Rahmen von UITextView
, wenn die Tastatur angezeigt wird.
Die folgende Frage beschreibt das gleiche Problem, das ich bei diesem Ansatz habe: Obwohl der Frame korrekt gesetzt ist, wird die letzte Zeile / der letzte Cursor über die Grenzen von UITextView
hinausgehen und daher außer Sichtweite sein:
UITextView-Cursor unter Frame, wenn Frame geändert wird
Sie können diesen Effekt im folgenden Screenshot sehen. Der UITextView
hat einen grünen Hintergrund. Es wurde zu einem UIView
mit einem roten Hintergrund hinzugefügt. Der Pfeil zeigt an, wo der Cursor steht ...
2) Ändern der Eigenschaft contentInset
für UITextView
Ich glaube, dass dieser empfohlene / bevorzugte Ansatz. Hinweis: Ich habe die Apple-Dokumentation zum Ändern der Größe von Ansichten auf der Basis des Erscheinens / Verschwindens der Tastatur gelesen:
Mit meinem Code bekomme ich keinen Effekt, wenn ich die untere Komponente von UIEdgeInsets
ändere.
Gleiches Beispiel wie oben, grün UITextView
auf einem roten UIView
, der Text verschwindet unter der Tastatur:
Und hier ist der Code:
%Vor% Hinweis : Der scrollIndicatorInsets
part funktioniert einwandfrei . Es ist schwierig, mit einem Screenshot darzustellen, aber die Bildlaufanzeige beginnt und stoppt an der richtigen Stelle und scheint die richtige Größe zu haben.
Ich habe eine Reihe von Fragen gelesen, bei denen Menschen ein ähnliches Problem hatten.
3) Ändern der textContainerInset
in UITextView
Die Antwort zu dieser Frage schlägt vor, textContainerInset
anstelle von contentInset
auf iOS 7 zu verwenden:
UITextView contentInset funktioniert nicht in UITextView auf iOS 7?
Ich habe das auch versucht, aber es gelingt mir immer noch nicht, die UITextView
zu ändern.
In dieser Frage hat 'mann' auch Probleme mit contentInset
und textContainerInset
:
UITextView-Inhalt Insert Bottom funktioniert nicht iOS7
Fragen
textContainerInset
oder contentInset
? contentInset
, fehlt mir etwas? Gibt es noch etwas, das ich einstellen muss? Danke
Tags und Links ios uitextview cocoa-touch ios7