- (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;
[UIView beginAnimations:@"ResizeForKeyboard" context:nil];
[UIView setAnimationDuration:animationDuration];
CGRect rect = CGRectMake(0.0f, 0.0f, self.frame.size.width, self.frame.size.height);
self.frame = rect;
[UIView commitAnimations];
[textField resignFirstResponder];
return YES;
}
#define Move_Height 80
- (void)textFieldDidBeginEditing:(UITextField *)textField
{
CGRect frame = textField.frame;
int offset = frame.origin.y + Move_Height - (self.frame.size.height - 216.0);//键盘高度216
NSTimeInterval animationDuration = 0.30f;
[UIView beginAnimations:@"ResizeForKeyBoard" context:nil];
[UIView setAnimationDuration:animationDuration];
float width = self.frame.size.width;
float height = self.frame.size.height;
if(offset > 0)
{
CGRect rect = CGRectMake(0.0f, -offset,width,height);
self.frame = rect;
}
[UIView commitAnimations];
}IOS 不让键盘挡住UITextField (自适应)
最新推荐文章于 2019-08-09 17:12:23 发布
本文深入探讨了在iOS应用中优化文本输入体验的方法,通过自定义键盘行为和视图调整,实现更流畅、响应更快的用户交互。重点介绍了如何在用户按下返回键时调整视图布局,确保键盘快速消失,同时保持UI的一致性和美观。文章还详细阐述了在文本字段开始编辑时,如何智能地调整视图位置,以减少键盘覆盖内容的影响,提供更好的用户体验。
2223

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



