UITextField是IOS sdk中的可编辑的文本框,它可以被设置成各种可编辑的文本,譬如电话号码,密码,邮箱.....
同时UITextField可以通过实现协议,来让生命周期中得UITextField变现得更加完美.
实例代码:
#import <UIKit/UIKit.h> @interface ViewController : UIViewController<UITextFieldDelegate>//实现UITextFild的协议 { UITextField *textField; } @end
- (void)viewDidLoad { [super viewDidLoad]; NSLog(@"TextFild"); [self.view setBackgroundColor:[UIColor grayColor]];//设置背景颜色 //1.实例化一个UITextField textField = [[UITextField alloc]initWithFrame:CGRectMake(0, 80, 200, 40)]; //2.设置样式 textField.borderStyle = UITextBorderStyleRoundedRect; //使用.语法来调用 // textFild.text = @"hello dragon"; textField.textColor = [UIColor colorWithRed:200/255.0 green:25/255.0 blue:224/255.0 alpha:1]; //使用方法调用,证明是用@property生成 [textField setTextAlignment:NSTextAlignmentCenter];//设置对齐 [textField setPlaceholder:@"请输入"];//提示信息 //[textFild setSecureTextEntry:YES];//设置成密码形式 //[textFild setKeyboardAppearance:UIKeyboardTypeNamePhonePad];//设置键盘样式 //.... //3.添加到视图控制器 textField.delegate = self; [self.view addSubview:textField]; } //将要结束的时候 -(BOOL)textFieldShouldBeginEditing:(UITextField *)textField { //用一个动画解决键盘遮挡的问题 //1.开始动画 [UIView beginAnimations:nil context:nil]; //2.设置动画执行时间 [UIView setAnimationDuration:0.5]; //3.设置frame的移动 self.view.frame=CGRectMake(0, -60, 320, 460); //4.结束动画 [UIView commitAnimations]; return YES; } //实现协议方法 -(BOOL)textFieldShouldReturn:(UITextField *)_textField { [_textField resignFirstResponder];//注销第一响应者,键盘消失 //1.开始动画 [UIView beginAnimations:nil context:nil]; //2.设置动画执行时间 [UIView setAnimationDuration:0.5]; //3.设置frame的移动 self.view.frame=CGRectMake(0, 20, 320, 460);//要恢复回原样 //4.结束动画 [UIView commitAnimations]; return YES; } //将要结束 -(BOOL)textFieldShouldEndEditing:(UITextField *)textField { return YES; }