Im using Xcode 5.1.1 developing for ios7. As there is new text entering the UITextView, I would like it if the text went up, leaving room for the user to see the new text. I
(Answered by a question edit. Converted to a community wiki answer. See Question with no answers, but issue solved in the comments (or extended in chat) )
The OP wrote:
Solution: The problem was that when text was getting inserted into the texview it scrolled to the top then called the scrollRangeToVisible which scrolled it to the bottom, which gave a bad animation and an unpleasant user experience. I solved this by disabling scroll before the text enters, and enabled it after the text was entered so it only calls the scrollRangeToVisible
[textview scrollRangeToVisible:textview.selectedRange];
textview.scrollEnabled= NO;
textview.text = [textview.text stringByAppendingString:createdString];
textview.scrollEnabled= YES;
The RIGHT answer is to set:
_consoleView.layoutManager.allowsNonContiguousLayout = NO;
In ViewDidLoad
Then:
_consoleView.text = text;
[_consoleView scrollRangeToVisible:NSMakeRange(_consoleView.text.length - 1, 1)];