我在iOS 8中遇到的问题在以前的版本中工作正常。
当我输入文本时,我的文本视图大约是4行,然后4行文本视图自动向上滚动,但在这种情况下不能在iOS8中滚动。
这是我的代码。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
NSString *updatedString = [textView.text stringByReplacingCharactersInRange:range withString:text];
textView.text = updatedString;
return NO;
}
提前致谢。
答案 0 :(得分:5)
试试这段代码。
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{
NSString *updatedString = [textView.text stringByReplacingCharactersInRange:range withString:text];
//textView.text = updatedString;
[textView replaceRange:textView.selectedTextRange withText:text];
return NO;
}
答案 1 :(得分:0)
要编辑UITextView的文本,您需要更新它的textStorage字段:
[_textView.textStorage beginEditing];
NSRange replace = NSMakeRange(10, 2); //enter your editing range
[_textView.textStorage replaceCharactersInRange:replace withString:@"ha ha$ "];
//if you want to edit the attributes
NSRange attributeRange = NSMakeRange(10, 5); //enter your editing attribute range
[_textView.textStorage addAttribute:NSBackgroundColorAttributeName value:[UIColor greenColor] range:attributeRange];
[_textView.textStorage endEditing];
祝你好运