UITextField和UIButton是最常用也是細(xì)節(jié)最繁瑣的系統(tǒng)控件之一蜻直。保存一下基礎(chǔ)知識
1.文本輸入框 TextField標(biāo)簽:
//創(chuàng)建對像
UITextField *textField = [ [ UITextField alloc] init ];
//設(shè)置起始位置和尺寸
textField.frame = CGRectMake(100,100,100,100);
//以上兩句可以簡寫成UITextField *textField = [[UITextField alloc]initWithFrame:CGRextMake];
//設(shè)置背景顏色
textField.backgroundColor = [UIColor yellowColor];
//添加到視圖控制器的view中
[self.view addSubview:textField];
2.設(shè)置邊框樣式
textField.borderStyle = UITextBorderStyleRoundedRect;//圓角
可選屬性:
UITextBorderStyleNone,無邊框
UITextBorderStyleLine,有邊框
UITextBorderStyleBezel,有邊框和陰影
UITextBorderStyleRoundedRect圓角
3于购、設(shè)置背景顏色
textField.backgroundColor?=?[UIColor?blueColor];
4兼雄、設(shè)置背景圖片
textField.background=[UIImage?imageNamed:@"test.png"];
5萝勤、提示文字
textField.placeholder?=?@"請輸入";
6鱼冀、設(shè)置和讀取文字內(nèi)容
textField.text?=?@”hello”;
NSString?*?str?=?textField.text;
7蒋腮、設(shè)置字體
[textField?setFont:[UIFont?fontWithName:@"Arial"?size:30]];
NSLog(@"%@",?[UIFont?familyNames]); 查看字體集
8割择、密文輸入
textField.secureTextEntry?=?YES;
9立宜、鍵盤類型
textField.keyboardType?=?UIKeyboardTypeNumberPad;??數(shù)字鍵
UIKeyboardTypeDefault, ? ? ? ? ? ? ? ? ? 當(dāng)前鍵盤(默認(rèn))
UIKeyboardTypeASCIICapable,??????????字母輸入鍵
UIKeyboardTypeNumbersAndPunctuation,??數(shù)字和符號
UIKeyboardTypeURL, ? ? ? ? ? ? ? ? ? ? ? URL鍵盤
UIKeyboardTypeNumberPad,?????????????數(shù)字鍵盤
UIKeyboardTypePhonePad, ? ? ? ? ? ? ??電話號碼輸入鍵盤
UIKeyboardTypeEmailAddress, ? ? ? ? ?郵件地址輸入鍵盤
10冒萄、鍵盤風(fēng)格
textView.keyboardAppearance=UIKeyboardAppearanceDefault;
可選屬性
UIKeyboardAppearanceDefault橙数,?默認(rèn)外觀尊流,淺灰色
UIKeyboardAppearanceAlert,?????深灰?石墨色
11灯帮、設(shè)置自定義鍵盤
UIView?*customView?=?[[UIView?alloc]?initWithFrame:CGRectMake(0,0,320.300)];
//位置和寬由系統(tǒng)決定崖技。
textField.inputView?=?customView?;
inputAccessoryView?設(shè)置系統(tǒng)鍵盤或自定義鍵盤上的視圖
12、設(shè)置左右視圖
UITextField?可以直接設(shè)置?leftView?或?rightView,?文本輸入?yún)^(qū)域就在?leftView?和?rightView?之間钟哥。
textField.leftView?=?leftview;
textField.leftViewMode?=?UITextFieldViewModeAlways;
右視圖rightView也是一樣迎献,Mode有四種
UITextFieldViewModeNever,?從不出現(xiàn)
UITextFieldViewModeWhileEditing?編輯時(shí)顯示
UITextFieldViewModeUnlessEditing?不編輯時(shí)顯示
UITextFieldViewModeAlways??總是顯示
13、設(shè)置清除按鈕顯示模式
textField.clearButtonMode?=?UITextFieldViewModeAlways;
Mode同左右視圖的mode一樣腻贰。
14吁恍、再次編輯時(shí)是否清空之前內(nèi)容;默認(rèn)NO
textField.clearsOnBeginEditing?=?YES
15播演、對齊方式
垂直對齊:
textField.contentVerticalAlignment?=?UIControlContentVerticalAlignmentCenter
可選屬性:
UIControlContentVerticalAlignmentCenter??居中對齊
UIControlContentVerticalAlignmentTop????頂部對齊冀瓦,默認(rèn)是頂部對齊
UIControlContentVerticalAlignmentBottom?底部對齊
UIControlContentVerticalAlignmentFill????完全填充
水平對齊:
textField.textAlignment?=?UITextAlignmentCenter;
可選屬性:
UITextAlignmentLeft,左對齊写烤,默認(rèn)是左對齊
UITextAlignmentCenter咕幻,
UITextAlignmentRight,右對齊
16顶霞、?設(shè)置滾動
textField.font?=?[UIFont?systemFontOfSize:30];?設(shè)置文字大小
textField.adjustsFontSizeToFitWidth?=?YES;?默認(rèn)是NO??YES當(dāng)充滿邊框時(shí),文字會縮小,當(dāng)小到一定程度時(shí)仍然會滾動选浑;自適應(yīng)寬度蓝厌;
設(shè)置滾動時(shí)最小字號,與滾動相關(guān)古徒,要比設(shè)置的字體小拓提,否則沒有意義,沒有設(shè)置這一項(xiàng)文字也會縮小和滾動
textField.minimumFontSize?=?20;
17隧膘、設(shè)置return鍵
textField.returnKeyType?=?UIReturnKeyGoogle;search
可選屬性
UIReturnKeyDefault,?默認(rèn)?灰色按鈕代态,標(biāo)有Return
UIReturnKeyGo,??????標(biāo)有Go的藍(lán)色按鈕
UIReturnKeyGoogle,標(biāo)有Google的藍(lán)色按鈕,用語搜索
UIReturnKeyJoin,標(biāo)有Join的藍(lán)色按鈕
UIReturnKeyNext,標(biāo)有Next的藍(lán)色按鈕
UIReturnKeyRoute,標(biāo)有Route的藍(lán)色按鈕
UIReturnKeySearch,標(biāo)有Search的藍(lán)色按鈕
UIReturnKeySend,標(biāo)有Send的藍(lán)色按鈕
UIReturnKeyYahoo,標(biāo)有Yahoo的藍(lán)色按鈕
UIReturnKeyYahoo,標(biāo)有Yahoo的藍(lán)色按鈕
UIReturnKeyEmergencyCall,?緊急呼叫按鈕
18疹吃、設(shè)置輸入自動糾正模式
textField.autocapitalizationType?=?UITextAutocapitalizationTypeAllCharacters;
可選屬性:
UITextAutocapitalizationTypeNone,?不自動糾正
UITextAutocapitalizationTypeWords,??單詞首字母大寫
UITextAutocapitalizationTypeSentences,??句子的首字母大寫
UITextAutocapitalizationTypeAllCharacters,?所有字母都大寫
二蹦疑、文本編輯框代理
1、是否進(jìn)入編輯模式
-?(BOOL)textFieldShouldBeginEditing:(UITextField?*)textField
默認(rèn)返回YES萨驶,進(jìn)入編輯模式歉摧。NO不進(jìn)入編輯模式
2、進(jìn)入編輯模式
-?(void)textFieldDidBeginEditing:(UITextField?*)textField
3腔呜、是否退出編輯模式
-?(BOOL)textFieldShouldEndEditing:(UITextField?*)textField
默認(rèn)返回YES叁温,退出編輯模式。NO不退出編輯模式
4核畴、退出編輯模式
-?(void)textFieldDidEndEditing:(UITextField?*)textField
5膝但、點(diǎn)擊清除按鈕是否清除
-?(BOOL)textFieldShouldClear:(UITextField?*)textField
默認(rèn)返回YES,返回NO不清除
6谤草、點(diǎn)擊鍵盤上Return按鈕時(shí)候調(diào)用
-?(BOOL)textFieldShouldReturn:(UITextField?*)textField
7跟束、當(dāng)輸入任何字符時(shí),代理調(diào)用該方法
-(BOOL)textField:(UITextField?*)field?shouldChangeCharactersInRange:(NSRange)range?replacementString:(NSString?*)string
當(dāng)輸入字符時(shí)咖刃,代理調(diào)用該方法泳炉,如果返回YES則這次輸入可以成功,如果返回NO嚎杨,不能輸入成功花鹅。range表示光標(biāo)位置,string表示這次輸入的字符串枫浙。
更多設(shè)置請見:http://blog.csdn.net/tskyfree/article/details/8121915#comments