本人用 textFile的代理做时,不知道是不是因为有导航栏的原因,导致输入框,控制器的view都会抖一下,虽然有效 果了,但是这么大的BUG还是不能忍。
本文采用的是代理和点击事件
[field addTarget:self action:@selector(textFieldDidBeginEditing:) forControlEvents:UIControlEventEditingDidBegin];
[field addTarget:self action:@selector(textFieldDidEndEditing:) forControlEvents:UIControlEventEditingDidEnd];
-(void)textFieldDidBeginEditing:(UITextField *)textField{
if (iPhone4 || iPhone5) {
//开始编辑时,整体上移
if (textField.tag==3) {
[self moveView:-40];
}
}
}
-(void)textFieldDidEndEditing:(UITextField *)textField{
if (iPhone4 || iPhone5) {
//结束编辑时,整体下移
if (textField.tag==3) {
[self moveView:40];
}
}
}
-(void)moveView:(float)move{
CGRect frame = self.view.frame;
frame.origin.y +=move;
//self.view.frame = frame;
[UIView beginAnimations:@"ResizeView" context:nil];
self.view.frame = frame;
[UIView commitAnimations];//设置调整界面的动画效果
}
#pragma mark UITextFiled的代理方法,为的是输入后点击return能让键盘退下去
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField endEditing:YES];
[textField resignFirstResponder];
return YES;
}