ios – iOS 7 UITextView is slow after typing lots of text

I’m having trouble with a slowdown that occurs in UITextView on iOS 7 when typing lots of text. I put a tracer in NSLayoutManager and identified that drawGlyphsForGlyphRange runs N*2 times, where N is the number of times your lines word-wrapped.

Here is the sample code:

  • Object vs. External Object in XCode Interface Builder
  • iframe size with CSS on iOS
  • Cannot create outlet connections to subviews in Interface Builder (Xcode 5)
  • How to initialize a NSFetchedResultsController in iOS 10 Swift 3
  • XCode 4.1 fatal error: stdlib modified since the precompiled header was built
  • XCode Error itms-90035 - Invalid signature for GCManager.o
  • https://github.com/philipkd/UITextViewSlow

    To reproduce the problem run it on an iPad and attach a physical keyboard. Mash the letters and the space bar for about 15 seconds, and notice it slows down. Then when you try to type normally, it’s really slow. That’s an extreme example, but if you just try typing two paragraphs at a reasonable speed, it’ll jam up.

    This is not a problem with UITextView on iOS 6.

    2 Solutions Collect From Internet About “ios – iOS 7 UITextView is slow after typing lots of text”

    Turn off Background App Refresh in Settings General. Also, get rid of NSLog–they slow down beyond what it takes them to print.

    I was able to reproduce the slow down effect on iPad under IOS7. In fact IOS6 did not have Background App Refresh.

    I believe Apple aims for top of the line models, all others have to adjust.

    Is the slows down happen when you plugged in (Xcode debugging) your ipad to the macbook/iMac? If yes, try to unplug the cable and try it again with the cable unplugged, see if it still slows down or not. If not, then it only happen when debugging process. (It’s just my guess, since I’m not owner of an external keyboard)