Created
November 28, 2013 11:15
-
-
Save steipete/7690343 to your computer and use it in GitHub Desktop.
Works around the issue where UITextView doesn't scroll to the new line until there's a character in there. Super horrible workaround.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { | |
// Horrible HACK for bug in UITextView where it won't scroll to the new line after pressing enter in the text view. | |
// I feel dirty for having to write this. Buggy at least within iOS 7.0 - 7.1b1. | |
if (PSPDFIsUIKitFlatMode() && [text isEqualToString:@"\n"] && range.location == textView.text.length) { | |
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.1 * NSEC_PER_SEC)); | |
dispatch_after(popTime, dispatch_get_main_queue(), ^{ | |
CGPoint contentOffset = textView.contentOffset; | |
CGFloat fontSize = textView.font.pointSize; | |
if (textView.contentSize.height - fontSize > textView.bounds.size.height) { | |
contentOffset.y += fontSize + 2.f; // add spacing | |
[textView setContentOffset:contentOffset animated:NO]; | |
} | |
}); | |
} | |
return YES; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This was my solution, seems a lot like yours :)