UITextField和UIButton是最常用也是細節最繁瑣的系統控件之一。保存一下基礎知識
1.文本輸入框 TextField標簽:
//創建對像
UITextField *textField = [ [ UITextField alloc] init ];
//設置起始位置和尺寸
textField.frame = CGRectMake(100,100,100,100);
//以上兩句可以簡寫成UITextField *textField = [[UITextField alloc]initWithFrame:CGRextMake];
//設置背景顏色
textField.backgroundColor = [UIColor yellowColor];
//添加到視圖控制器的view中
[self.view addSubview:textField];
2.設置邊框樣式
textField.borderStyle = UITextBorderStyleRoundedRect;//圓角
可選屬性:
UITextBorderStyleNone,無邊框
UITextBorderStyleLine,有邊框
UITextBorderStyleBezel,有邊框和陰影
UITextBorderStyleRoundedRect圓角
3、設置背景顏色
textField.backgroundColor?=?[UIColor?blueColor];
4、設置背景圖片
textField.background=[UIImage?imageNamed:@"test.png"];
5、提示文字
textField.placeholder?=?@"請輸入";
6、設置和讀取文字內容
textField.text?=?@”hello”;
NSString?*?str?=?textField.text;
7、設置字體
[textField?setFont:[UIFont?fontWithName:@"Arial"?size:30]];
NSLog(@"%@",?[UIFont?familyNames]); 查看字體集
8、密文輸入
textField.secureTextEntry?=?YES;
9、鍵盤類型
textField.keyboardType?=?UIKeyboardTypeNumberPad;??數字鍵
UIKeyboardTypeDefault, ? ? ? ? ? ? ? ? ? 當前鍵盤(默認)
UIKeyboardTypeASCIICapable,??????????字母輸入鍵
UIKeyboardTypeNumbersAndPunctuation,??數字和符號
UIKeyboardTypeURL, ? ? ? ? ? ? ? ? ? ? ? URL鍵盤
UIKeyboardTypeNumberPad,?????????????數字鍵盤
UIKeyboardTypePhonePad, ? ? ? ? ? ? ??電話號碼輸入鍵盤
UIKeyboardTypeEmailAddress, ? ? ? ? ?郵件地址輸入鍵盤
10、鍵盤風格
textView.keyboardAppearance=UIKeyboardAppearanceDefault;
可選屬性
UIKeyboardAppearanceDefault,?默認外觀,淺灰色
UIKeyboardAppearanceAlert,?????深灰?石墨色
11、設置自定義鍵盤
UIView?*customView?=?[[UIView?alloc]?initWithFrame:CGRectMake(0,0,320.300)];
//位置和寬由系統決定。
textField.inputView?=?customView?;
inputAccessoryView?設置系統鍵盤或自定義鍵盤上的視圖
12、設置左右視圖
UITextField?可以直接設置?leftView?或?rightView,?文本輸入區域就在?leftView?和?rightView?之間。
textField.leftView?=?leftview;
textField.leftViewMode?=?UITextFieldViewModeAlways;
右視圖rightView也是一樣,Mode有四種
UITextFieldViewModeNever,?從不出現
UITextFieldViewModeWhileEditing?編輯時顯示
UITextFieldViewModeUnlessEditing?不編輯時顯示
UITextFieldViewModeAlways??總是顯示
13、設置清除按鈕顯示模式
textField.clearButtonMode?=?UITextFieldViewModeAlways;
Mode同左右視圖的mode一樣。
14、再次編輯時是否清空之前內容;默認NO
textField.clearsOnBeginEditing?=?YES
15、對齊方式
垂直對齊:
textField.contentVerticalAlignment?=?UIControlContentVerticalAlignmentCenter
可選屬性:
UIControlContentVerticalAlignmentCenter??居中對齊
UIControlContentVerticalAlignmentTop????頂部對齊,默認是頂部對齊
UIControlContentVerticalAlignmentBottom?底部對齊
UIControlContentVerticalAlignmentFill????完全填充
水平對齊:
textField.textAlignment?=?UITextAlignmentCenter;
可選屬性:
UITextAlignmentLeft,左對齊,默認是左對齊
UITextAlignmentCenter,
UITextAlignmentRight,右對齊
16、?設置滾動
textField.font?=?[UIFont?systemFontOfSize:30];?設置文字大小
textField.adjustsFontSizeToFitWidth?=?YES;?默認是NO??YES當充滿邊框時,文字會縮小,當小到一定程度時仍然會滾動;自適應寬度;
設置滾動時最小字號,與滾動相關,要比設置的字體小,否則沒有意義,沒有設置這一項文字也會縮小和滾動
textField.minimumFontSize?=?20;
17、設置return鍵
textField.returnKeyType?=?UIReturnKeyGoogle;search
可選屬性
UIReturnKeyDefault,?默認?灰色按鈕,標有Return
UIReturnKeyGo,??????標有Go的藍色按鈕
UIReturnKeyGoogle,標有Google的藍色按鈕,用語搜索
UIReturnKeyJoin,標有Join的藍色按鈕
UIReturnKeyNext,標有Next的藍色按鈕
UIReturnKeyRoute,標有Route的藍色按鈕
UIReturnKeySearch,標有Search的藍色按鈕
UIReturnKeySend,標有Send的藍色按鈕
UIReturnKeyYahoo,標有Yahoo的藍色按鈕
UIReturnKeyYahoo,標有Yahoo的藍色按鈕
UIReturnKeyEmergencyCall,?緊急呼叫按鈕
18、設置輸入自動糾正模式
textField.autocapitalizationType?=?UITextAutocapitalizationTypeAllCharacters;
可選屬性:
UITextAutocapitalizationTypeNone,?不自動糾正
UITextAutocapitalizationTypeWords,??單詞首字母大寫
UITextAutocapitalizationTypeSentences,??句子的首字母大寫
UITextAutocapitalizationTypeAllCharacters,?所有字母都大寫
二、文本編輯框代理
1、是否進入編輯模式
-?(BOOL)textFieldShouldBeginEditing:(UITextField?*)textField
默認返回YES,進入編輯模式。NO不進入編輯模式
2、進入編輯模式
-?(void)textFieldDidBeginEditing:(UITextField?*)textField
3、是否退出編輯模式
-?(BOOL)textFieldShouldEndEditing:(UITextField?*)textField
默認返回YES,退出編輯模式。NO不退出編輯模式
4、退出編輯模式
-?(void)textFieldDidEndEditing:(UITextField?*)textField
5、點擊清除按鈕是否清除
-?(BOOL)textFieldShouldClear:(UITextField?*)textField
默認返回YES,返回NO不清除
6、點擊鍵盤上Return按鈕時候調用
-?(BOOL)textFieldShouldReturn:(UITextField?*)textField
7、當輸入任何字符時,代理調用該方法
-(BOOL)textField:(UITextField?*)field?shouldChangeCharactersInRange:(NSRange)range?replacementString:(NSString?*)string
當輸入字符時,代理調用該方法,如果返回YES則這次輸入可以成功,如果返回NO,不能輸入成功。range表示光標位置,string表示這次輸入的字符串。
更多設置請見:http://blog.csdn.net/tskyfree/article/details/8121915#comments