was man anstelle von scrollRangeToVisible in iOS7 oder TextKit verwenden soll

8

In früheren Versionen von iOS scrollt mein UITextView mit

nach unten %Vor%

oder

%Vor%

Aber die erste Version hat jetzt den seltsamen Effekt, dass Sie am Anfang einer langen Textlänge beginnen und die Bildlaufleiste jedes Mal nach unten animieren, wenn ich Text an die Ansicht angehängt habe. Gibt es eine Möglichkeit, an den unteren Rand des Textes zu gelangen, wenn ich Text hinzufüge?

    
Nelson Ko 26.11.2013, 18:11
quelle

5 Antworten

3
%Vor%

Das funktioniert wirklich für mich in iOS 7.1.2.

    
user3907849 12.08.2014 15:50
quelle
2

Ich glaube, das ist ein Fehler in iOS 7. Das Umschalten von scrollEnabled auf der UITextView scheint es zu beheben:

%Vor%     
Peter Heide 25.02.2014 22:36
quelle
2

Für zukünftige Reisende, die aus dem @ mikeho-Post herauskamen, fand ich etwas, das Wunder für mich bewirkte, aber ein bisschen einfacher ist.

1) Vergewissern Sie sich, dass Ihre UITextView contentInset s richtig eingestellt sind & amp; Ihre Textansicht ist bereits firstResponder() , bevor Sie dies tun.
2) Nachdem meine Einschübe fertig sind und der Cursor aktiv ist, rufe ich die folgende Funktion auf:

%Vor%     
kbpontius 06.08.2015 19:24
quelle
0

Ich denke, dass Ihre Parameter in NSMakeRange umgekehrt sind. Ort ist der erste und dann wie viele Sie auswählen möchten ( Länge ).

%Vor%

... würde eine Auswahl erstellen, die mit dem 0. (ersten?) Zeichen beginnt und die gesamte Länge der Zeichenfolge einnimmt. Um nach unten zu scrollen, möchtest du wahrscheinlich nur ein einzelnes Zeichen am Ende auswählen.

Dies funktioniert bei iOS SDK 7.1 mit Xcdoe 5.1.1.

%Vor%

Ich tue das, während ich Text programmatisch hinzufüge, und die Textansichten bleiben unten wie Terminal oder Befehlszeilenausgabe.

    
Jeff 29.07.2014 03:55
quelle
0

Am besten legen Sie die Grenzen für UITextView fest. Es löst kein Scrollen aus und hat sofort den Effekt, das Sichtbare neu zu positionieren. Sie können dies tun, indem Sie den Ort des Caret finden und dann neu positionieren:

%Vor%     
mikeho 26.06.2015 21:32
quelle