iOS - iOS 7 UITextView ist langsam, nachdem Sie viel Text eingegeben haben

Ich habe Probleme mit einer Verlangsamung in UITextView unter iOS 7, wenn ich viel Text eingebe. Ich habe einen Tracer in NSLayoutManager eingefügt und festgestellt, dass drawGlyphsForGlyphRange N * 2-mal ausgeführt wird, wobei N die Anzahl der Zeilen ist, die mit einem Zeilenumbruch versehen sind.

Hier ist der Beispielcode:

https://github.com/philipkd/UITextViewSlow

Um das Problem zu reproduzieren, führen Sie es auf einem iPad aus und schließen Sie eine physische Tastatur an. Zerdrücke die Buchstaben und die Leertaste etwa 15 Sekunden lang und merke, dass sie langsamer werden. Wenn Sie dann versuchen, normal zu tippen, ist es sehr langsam. Das ist ein extremes Beispiel, aber wenn Sie nur versuchen, zwei Absätze mit einer angemessenen Geschwindigkeit einzugeben, kommt es zu einem Stau.

Dies ist mit UITextView unter iOS 6 kein Problem.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage