- (void)keyboardWillShow:(NSNotification *)noti
{ //键盘输入的界面调整
//键盘的高度
float height = 220.0;
CGRect frame = self.view.frame;
frame.size = CGSizeMake(frame.size.width, frame.size.height - height);
[UIViewbeginAnimations:@"Curl"context:nil];//动画开始
[UIView setAnimationDuration:0.30];
[UIViewsetAnimationDelegate:self];
[self.view setFrame:frame];
[UIView commitAnimations];
}
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
// When the user presses return, take focus away from the text field
//so that the keyboard is dismissed.
NSTimeInterval animationDuration = 0.30f;
[UIViewbeginAnimations:@"ResizeForKeyboard"context:nil];
[UIView setAnimationDuration:animationDuration];
CGRect rect =
CGRectMake(0.0f,0.0f, self.view.frame.size.width,self.view.frame.size.height);
self.view.frame = rect;
[UIView commitAnimations];
[self.commentTextresignFirstResponder];
return YES;
}
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
CGRect frame = textField.superview.frame;
int offset = frame.origin.y +32 - (self.view.frame.size.height -220.0);
NSTimeInterval animationDuration = 0.30f;
[UIView beginAnimations:@"ResizeForKeyBoard"context:nil];
[UIView setAnimationDuration:animationDuration];
float width = self.view.frame.size.width;
float height = self.view.frame.size.height;
if(offset > 0)
{
CGRect rect = CGRectMake(0.0f, -offset,width,height);
self.view.frame = rect;
}
[UIView commitAnimations];
}
- (void)textFieldDidEndEditing:(UITextField *)textField{
CGRect frame = textField.frame;
int offset = frame.origin.y +32 - (self.view.frame.size.height +220);
NSTimeInterval animationDuration = 0.30f;
[UIView beginAnimations:@"ResizeForKeyBoard"context:nil];
[UIView setAnimationDuration:animationDuration];
float width = self.view.frame.size.width;
float height = self.view.frame.size.height;
if(offset > 0)
{
CGRect rect = CGRectMake(0.0f, -offset,width,height);
self.view.frame = rect;
}
[UIViewcommitAnimations];
[textField resignFirstResponder];
}如何在ios开发中不让键盘弹出时挡住了文本框的输入
iOS键盘交互调整
最新推荐文章于 2025-12-10 16:02:04 发布
本文介绍了一个iOS应用中针对键盘弹出、隐藏时视图自动调整的实现方法。通过监听键盘显示通知来调整视图大小,并在用户按下返回键时关闭键盘。此外,还实现了在文本框开始和结束编辑时对视图进行相应的动画调整。
6445

被折叠的 条评论
为什么被折叠?



