iphone 弹出键盘,文本框自动向上移动。

1。
让类继承UITextViewDelegate


UITextView *inputTextView;
UIScrollView * _scrollView;


2。在init函数中先创建scrollView
_scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 416)];
[self.view addSubview:_scrollView];




inputTextView = [[UITextView alloc] initWithFrame:CGRectMake(15, nStartY, 290, 110)];
[inputTextView setFont:[UIFont systemFontOfSize:15]];
inputTextView.backgroundColor = [UIColor clearColor];
inputTextView.delegate = self;
inputTextView.returnKeyType = UIReturnKeyDone;
[_scrollView addSubview:inputTextView];




3。


#pragma mark -
#pragma mark textViewdelegate


- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {
//当点击键盘DONE的时候,关闭键盘
if ([text isEqualToString:@" "]) {
        [textView resignFirstResponder];
       return NO;
    }

return YES;
}


- (void)textViewDidBeginEditing:(UITextView *)textView
{
[UIView beginAnimations: nil context: nil];
_scrollView.frame = CGRectMake(0, -80, 320, 416);
[UIView commitAnimations];
}


- (void)textViewDidEndEditing:(UITextView *)textView
{
[UIView beginAnimations: nil context: nil];
_scrollView.frame = CGRectMake(0, 0, 320, 416);
[UIView commitAnimations];
}

原文地址:https://www.cnblogs.com/lgphp/p/4109606.html