iOS7 UITextView 光标问题
最近在项目中遇到UITextView在ios7上出现编辑进入最后一行时光标消失,看不到最后一行,变成盲打,stackOverFlow网站上有大神指出,是ios7本身bug,加上下面一段代码即可:
1 -(void)textViewDidChange:(UITextView *)textView { 2 CGRect line = [textView caretRectForPosition: 3 textView.selectedTextRange.start]; 4 CGFloat overflow = line.origin.y + line.size.height 5 - ( textView.contentOffset.y + textView.bounds.size.height 6 - textView.contentInset.bottom - textView.contentInset.top ); 7 if ( overflow > 0 ) { 8 // We are at the bottom of the visible text and introduced a line feed, scroll down (iOS 7 does not do it) 9 // Scroll caret to visible area 10 CGPoint offset = textView.contentOffset; 11 offset.y += overflow + 7; // leave 7 pixels margin 12 // Cannot animate with setContentOffset:animated: or caret will not appear 13 [UIView animateWithDuration:.2 animations:^{ 14 [textView setContentOffset:offset]; 15 }]; 16 } 17 }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。