思路就是自己写写一个UIView,然后监听键盘的事件,得到键盘的位置后调整自己写的view的位置,保证这个view的下边界与键盘的上边界相接。在自定义view中包含一个UITextField或者UITextView。通过代码调用其becomeFirstResponder(第一响应者)方法来弹出键盘。通过相应函数改变UIView的位置.
//设置监听事件
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillChange:) name:UIKeyboardWillChangeFrameNotification object:nil];
//键盘发生改变执行
- (void)keyboardWillChange:(NSNotification *)note
{
NSDictionary *userInfo = note.userInfo;
CGFloat duration = [userInfo[@"UIKeyboardAnimationDurationUserInfoKey"] doubleValue];
CGRect keyFrame = [userInfo[@"UIKeyboardFrameEndUserInfoKey"] CGRectValue];
CGFloat moveY = keyFrame.origin.y - self.view.frame.size.height-64;//这个64是我减去的navigationbar加上状态栏20的高度,可以看自己的实际情况决定是否减去;
[UIView animateWithDuration:duration animations:^{
self.view.transform = CGAffineTransformMakeTranslation(0, moveY);
}];
}
还有不足,仅供大家参考;第一次写博客,之后会随时更新一些自己用得到的和大家分享;
这篇博客介绍了在iOS开发中如何利用键盘事件监听,自定义UIView并在键盘弹出时调整其位置,确保视图下边界与键盘上边界对齐。通过在自定义视图中集成UITextField或UITextView,并调用becomeFirstResponder方法弹出键盘。博主分享了初步实现的代码,并表示将不断完善和更新博客内容。
2879

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



