iOS 实现输入框被编辑以及取消编辑跟随键盘移动
来源:互联网 发布:阿里云市场 编辑:程序博客网 时间:2024/05/01 01:46
通常情况下,我们在做评论的时候,以及即时聊天时候要实现实现输入框被编辑以及取消编辑跟随键盘移动。
效果和微信一样,当我们编辑的时候输入框就会跟随键盘移动。
例子效果图:
当我点击评论或者编辑输入框的时候,键盘就会自动上移是实现代码如下:
- (void)viewDidLoad {
[superviewDidLoad];
// 收起键盘键盘
UITapGestureRecognizer *tapgest = [[UITapGestureRecognizeralloc]initWithTarget:selfaction:@selector(tapBackAction)];
[self.viewaddGestureRecognizer:tapgest];
}
- (void)tapBackAction {
[self.viewendEditing:YES];
}
- (void)viewWillAppear:(BOOL)animated {
// 添加对键盘的监控
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(keyBoardWillShow:)name:UIKeyboardWillShowNotificationobject:nil];
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(keyBoardWillHide:)name:UIKeyboardWillHideNotificationobject:nil];
}
- (void)tapBackAction {
[self.viewendEditing:YES];
}
- (void)keyBoardWillShow:(NSNotification *) note {
// 获取用户信息
NSDictionary *userInfo = [NSDictionarydictionaryWithDictionary:note.userInfo];
// 获取键盘高度
CGRect keyBoardBounds = [[userInfoobjectForKey:UIKeyboardFrameEndUserInfoKey]CGRectValue];
CGFloat keyBoardHeight = keyBoardBounds.size.height;
// 获取键盘动画时间
CGFloat animationTime = [[userInfoobjectForKey:UIKeyboardAnimationDurationUserInfoKey]floatValue];
// 定义好动作
void (^animation)(void) = ^void(void) {
self.suspendView.transform = CGAffineTransformMakeTranslation(0, - keyBoardHeight);
};
if (animationTime >0) {
[UIViewanimateWithDuration:animationTimeanimations:animation];
} else {
animation();
}
}
- (void)keyBoardWillHide:(NSNotification *) note {
// 获取用户信息
NSDictionary *userInfo = [NSDictionarydictionaryWithDictionary:note.userInfo];
// 获取键盘动画时间
CGFloat animationTime = [[userInfoobjectForKey:UIKeyboardAnimationDurationUserInfoKey]floatValue];
// 定义好动作
void (^animation)(void) = ^void(void) {
self.suspendView.transform = CGAffineTransformIdentity;
};
if (animationTime >0) {
[UIViewanimateWithDuration:animationTimeanimations:animation];
} else {
animation();
}
}
@property (weak,nonatomic)IBOutletUIView *suspendView;
这样就实现了,所需要的效果
- iOS 实现输入框被编辑以及取消编辑跟随键盘移动
- ios UItextFiewld 点击文本框编辑 实现弹出键盘时,输入框向上移动
- iOS 设置编辑时键盘不挡住编辑框以及收起键盘
- iOS 聊天输入框跟随键盘运动动画实现
- 监听键盘位置,使输入框跟随键盘移动
- iOS-界面跟随键盘移动
- IOS隐藏编辑框键盘的方法
- 取消JSpinner的键盘编辑能力
- swift实现ios类似微信输入框跟随键盘弹出的效果
- Swift 实现 iOS 类似微信输入框跟随键盘弹出的效果
- swift实现ios类似微信输入框跟随键盘弹出的效果
- swift实现ios类似微信输入框跟随键盘弹出的效果
- Swift 解决IOS开发中TableView中编辑UITextField时键盘遮挡输入框的情况
- editgrid表格,编辑状态,取消编辑,键盘事件
- VC++ 实现CEdit编辑框输入小数!
- javascript实现输入框不可编辑
- iOS 快捷键~移动、编辑、选择
- 编辑框被键盘遮挡解决办法!
- Bilibili/boxing图片选择与裁剪,视频选择
- 人工智能红利:程序员的四种享用方式
- Mybatis动态SQL
- string对象,substr和substing截取的案例。
- 74LS181 ALU 功能介绍
- iOS 实现输入框被编辑以及取消编辑跟随键盘移动
- 在Android library中不能使用switch-case语句访问资源ID
- Tensorflow从入门到秃顶(4)
- 4、表格内容搜索
- 感想
- 【Linux】好用的数据处理工具 awk
- Spring事物传播机制
- 使用delayedQueue实现你本地的延迟队列
- run个人 信息数据