iOS 8中的UITextView问题:输入文本时文本视图不滚动

时间:2014-09-21 03:06:41

标签: scroll keyboard uitextview ios8

我在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;


}

提前致谢。

2 个答案:

答案 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];
祝你好运