iOS 解决键盘遮挡问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Kun__kun/article/details/50855821
//键盘遮挡问题
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
    CGRect frame = textField.superview.frame;//得到textField的父视图的frame
    int offset = frame.origin.y + 10 - (_ScrollView.frame.size.height - 286.0);
//ScrollView为所有控件的父视图,根据情况也可以设置为self.View  键盘设置最大高度286
    
    //将视图的Y坐标向上移动offset个单位,以使下面腾出地方用于软键盘的显示
    if(offset > 0)//如果键盘高度遮盖控件后再进行移动
        [UIView animateWithDuration:0.3 animations:^{
            _ScrollView.contentOffset = CGPointMake(0, offset);
        } completion:^(BOOL finished) {
            
        }];
        
    
    //[UIView commitAnimations];
}

//输入框编辑完成以后,将视图恢复到原始状态
-(void)textFieldDidEndEditing:(UITextField *)textField
{
    [UIView animateWithDuration:0.3 animations:^{
        _ScrollView.contentOffset = CGPointMake(0, 0);
        [self.view endEditing:YES];
    } completion:^(BOOL finished) {
        
    }];
    
}


猜你喜欢

转载自blog.csdn.net/Kun__kun/article/details/50855821