// 添加通知监听见键盘弹出/退出
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardAction:) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardAction:) name:UIKeyboardWillHideNotification object:nil];
// 键盘监听事件
- (void)keyboardAction:(NSNotification*)sender{
// 通过通知对象获取键盘frame: [value CGRectValue]
NSDictionary *useInfo = [sender userInfo];
NSValue *value = [useInfo objectForKey:UIKeyboardFrameEndUserInfoKey];
// <注意>具有约束的控件通过改变约束值进行frame的改变处理
if([sender.name isEqualToString:UIKeyboardWillShowNotification]){
self.selectedView.transform = CGAffineTransformMakeTranslation(0, -[value CGRectValue].size.height);
}else{
self.selectedView.transform = CGAffineTransformMakeTranslation(0, 0);
}
}