在ViewController.h裡面聲明對象和屬性,並加上代理UITextFieldDelegate:
#import
@interface ViewController : UIViewController{
//定義一個textField
//文本輸入區域
//例如:用戶名,密碼等需要輸入文本文字的內容區域
//只能輸入單行的文字,不能輸入或者顯示多行
UITextField * _textField;
}
//定義屬性
@property(retain,nonatomic) UITextField * textField;
@end
在 ViewController.m進行實現:
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize textField =_textField;
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
//創建一個文本輸入區對象,UITextField是繼承UIControl,UIControl是繼承UIView
self.textField = [[UITextField alloc]init];
//設定文本輸入區位置
self.textField.frame = CGRectMake(100, 100, 180, 40);
//設置textField的內容文字
self.textField.text=@"";
//設置字體的大小
self.textField.font=[UIFont systemFontOfSize:15];
//設置字體的顏色
self.textField.textColor=[UIColor blackColor];
//設置邊框的風格
//UITextBorderStyleRoundedRect:圓角風格,默認就是圓角風格
//UITextBorderStyleLine:線框風格
// UITextBorderStyleBezel:bezel線框
// UITextBorderStyleNone:無邊框風格
self.textField.borderStyle = UITextBorderStyleRoundedRect;
//設置虛擬鍵盤風格
//UIKeyboardTypeNumberPad:純數字風格
//UIKeyboardTypeNamePhonePad:字母和數字組合風格
//UIKeyboardTypeDefault:默認風格
// self.textField.keyboardType =UIKeyboardTypeDefault;
self.textField.keyboardType =UIKeyboardTypeNumberPad;
//提示文字信息
//當text屬性為空,顯示此條信息
//淺灰色提示文字
self.textField.placeholder=@"請輸入用戶名";
//是否作為密碼輸入
//YES:作為處理,圓點加密
//NO:正常顯示輸入的文字
self.textField.secureTextEntry=YES;
[self.view addSubview:self.textField];
//設置代理對象
self.textField.delegate=self;
}
-(void) textFieldDidBeginEditing:(UITextField *)textField{
NSLog(@"開始編輯了");
}
-(void) textFieldDidEndEditing:(UITextField *)textField{
NSLog(@"編輯輸入結束");
self.textField.text=@"";
}
//是否可以進行輸入
//如果返回值為YES,可以進行輸入,默認為YES;
//NO:不能輸入文字,鍵盤彈不出來
-(BOOL) textFieldShouldBeginEditing:(UITextField *)textField{
return YES;
}
//是否可以結束輸入
//如果返回值為YES:可以結束輸入,默認為YES;
//NO:不能結束輸入文字,鍵盤不能收回
-(BOOL) textFieldShouldEndEditing:(UITextField *)textField{
return YES;
}
//點擊屏幕空白處調用此函數
-(void) touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
//使虛擬鍵盤回收,不再作為第一消息響應者
[self.textField resignFirstResponder];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end