参考文章地址:http://justcoding.iteye.com/blog/1455708
.h文件:
#import <UIKit/UIKit.h>
@interface textfieldViewController : UIViewController<UITextFieldDelegate>
@end
.m文件:
- (void)viewDidLoad
{
[super viewDidLoad];
_field=[[UITextField alloc] initWithFrame:CGRectMake(0, 420, 100, 30)];
_field.borderStyle=UITextBorderStyleRoundedRect;
_field.returnKeyType=UIReturnKeyDefault;
_field.clearButtonMode=UITextFieldViewModeUnlessEditing;//UITextField 的一件清除按钮是否出现
_field.text=@"";
_field.delegate=self;
_field.adjustsFontSizeToFitWidth=YES;
[self.view addSubview:_field];
UITextField* exfield=[[UITextField alloc] initWithFrame:CGRectMake(0, 224, 100, 30)];
exfield.borderStyle=UITextBorderStyleRoundedRect;
exfield.text=@"121";
exfield.delegate=self;
[self.view addSubview:exfield];
}
-(BOOL) textFieldShouldReturn:(UITextField *)textField
{
NSLog(@"%@",textField.text);
[textField resignFirstResponder];//按done时虚拟键盘消失
return YES;
}
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
if (textField.frame.origin.y>(460-216-textField.frame.size.height)) {
CGRect frame = self.view.frame;
frame.origin.y -=(textField.frame.origin.y+textField.frame.size.height-(460-253));//将view上移到中文输入下不遮住uitextfield。
frame.size.height +=(textField.frame.origin.y+textField.frame.size.height-(460-253));//不设置时键盘出现时会有黑色
self.view.frame = frame;
}
return YES;
}
-(BOOL)textFieldShouldEndEditing:(UITextField *)textField//编辑结束view移回原先的位置
{
if (textField.frame.origin.y>(460-216-textField.frame.size.height)) {
CGRect frame = self.view.frame;
frame.origin.y +=(textField.frame.origin.y+textField.frame.size.height-(460-253));
frame.size.height -=(textField.frame.origin.y+textField.frame.size.height-(460-253));
self.view.frame = frame;
}
return YES;
}