iOS App開(kāi)發(fā)中UITextField組件的常用屬性小結(jié)
重點(diǎn)屬性
在 Xcode 中使用 IB 給視圖拖上去一個(gè)文本框后,選中文本框,可以在Attribute Inspector中設(shè)置其各種屬性。
Attribute Inspector 分為三部分,分別是 Text Field、Control 和 View 部分。我們重點(diǎn)看看 Text Field 部分。
Text Field 部分有以下選項(xiàng):
1、Text :設(shè)置文本框的默認(rèn)文本。
2、Placeholder : 可以在文本框中顯示灰色的字,用于提示用戶應(yīng)該在這個(gè)文本框輸入什么內(nèi)容。當(dāng)這個(gè)文本框中輸入了數(shù)據(jù)時(shí),用于提示的灰色的字將會(huì)自動(dòng)消失。
3、Background :
4、Disabled : 若選中此項(xiàng),用戶將不能更改文本框內(nèi)容。
5、接下來(lái)是三個(gè)按鈕,用來(lái)設(shè)置對(duì)齊方式。
6、Border Style : 選擇邊界風(fēng)格。
7、Clear Button : 這是一個(gè)下拉菜單,你可以選擇清除按鈕什么時(shí)候出現(xiàn),所謂清除按鈕就是出一個(gè)現(xiàn)在文本框右邊的小 X ,你可以有以下選擇:
7.1 Never appears : 從不出現(xiàn)
7.2 Appears while editing : 編輯時(shí)出現(xiàn)
7.3 Appears unless editing :
7.4 Is always visible : 總是可見(jiàn)
8、Clear when editing begins : 若選中此項(xiàng),則當(dāng)開(kāi)始編輯這個(gè)文本框時(shí),文本框中之前的內(nèi)容會(huì)被清除掉。比如,你現(xiàn)在這個(gè)文本框 A 中輸入了 "What" ,之后去編輯文本框 B,若再回來(lái)編輯文本框 A ,則其中的 "What" 會(huì)被立即清除。
9、Text Color : 設(shè)置文本框中文本的顏色。
10、Font : 設(shè)置文本的字體與字號(hào)。
11、Min Font Size : 設(shè)置文本框可以顯示的最小字體(不過(guò)我感覺(jué)沒(méi)什么用)
12、Adjust To Fit : 指定當(dāng)文本框尺寸減小時(shí),文本框中的文本是否也要縮小。選擇它,可以使得全部文本都可見(jiàn),即使文本很長(zhǎng)。但是這個(gè)選項(xiàng)要跟 Min Font Size 配合使用,文本再縮小,也不會(huì)小于設(shè)定的 Min Font Size 。
接下來(lái)的部分用于設(shè)置鍵盤(pán)如何顯示。
13、Captitalization : 設(shè)置大寫(xiě)。下拉菜單中有四個(gè)選項(xiàng):
13.1 None : 不設(shè)置大寫(xiě)
13.2 Words : 每個(gè)單詞首字母大寫(xiě),這里的單詞指的是以空格分開(kāi)的字符串
13.3 Sentances : 每個(gè)句子的第一個(gè)字母大寫(xiě),這里的句子是以句號(hào)加空格分開(kāi)的字符串
13.4 All Characters : 所以字母大寫(xiě)
14、Correction : 檢查拼寫(xiě),默認(rèn)是 YES 。
15、Keyboard : 選擇鍵盤(pán)類型,比如全數(shù)字、字母和數(shù)字等。
16、Appearance:
17、Return Key : 選擇返回鍵,可以選擇 Search 、 Return 、 Done 等。
18、Auto-enable Return Key : 如選擇此項(xiàng),則只有至少在文本框輸入一個(gè)字符后鍵盤(pán)的返回鍵才有效。
19、Secure : 當(dāng)你的文本框用作密碼輸入框時(shí),可以選擇這個(gè)選項(xiàng),此時(shí),字符顯示為星號(hào)。
技巧
下面來(lái)說(shuō)兩個(gè)小技巧:
一、UITextField隱藏鍵盤(pán)
1.點(diǎn)擊鍵盤(pán)的return來(lái)隱藏鍵盤(pán)
這個(gè)方法需要在相應(yīng)的.h文件文件中實(shí)現(xiàn)UITextFieldDelegate協(xié)議。并在.m文件中添加如下方法
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
2.點(diǎn)擊界面空白處來(lái)隱藏鍵盤(pán)
這個(gè)方法的實(shí)現(xiàn)主要是給當(dāng)前的view增加點(diǎn)擊事件,并未點(diǎn)擊事件增加相應(yīng)的處理方法,此處是為了隱藏鍵盤(pán),所以我們可以在點(diǎn)擊事件對(duì)應(yīng)的方法中讓UITextField放棄第一響應(yīng)者。
- (void)dismissKeyboard
{
NSArray *subViews = [self.view subviews];
for (id inputText in subViews) {
if ([inputText isKindOfClass:[UITextField class]]) {
if ([inputText isFirstResponder]) {
[inputText resignFirstResponder];
}
}
}
}
為當(dāng)前的view增加點(diǎn)擊事件
UITapGestureRecognizer *dismissKeyboardTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(dismissKeyboard)];
[self.view addGestureRecognizer: dismissKeyboardTap];
二、為內(nèi)容增加校驗(yàn)
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField
{
switch (textField.tag) {
case 100://name
{
NSLog(@"this is nameField");
//添加校驗(yàn)name的代碼
break;
}
case 101://phone
{
NSLog(@"this is phoneField");
//添加校驗(yàn)phone的代碼
break;
}
case 102://email
{
NSLog(@"this is emailField");
//添加校驗(yàn)email的代碼
break;
}
default:
break;
}
return YES;
}
- iOS中修改UITextField占位符字體顏色的方法總結(jié)
- iOS UITextField最大字符數(shù)和字節(jié)數(shù)的限制詳解
- IOS UI學(xué)習(xí)教程之設(shè)置UITextField各種屬性
- iOS開(kāi)發(fā)之自定義UITextField的方法
- 解決iOS UITextField 編輯時(shí)文本偏移問(wèn)題
- iOS輸入框(UITextField)密碼明暗文切換方法
- iOS 中 使用UITextField格式化銀行卡號(hào)碼的解決方案
- iOS改變UITextField占位文字顏色的三種方法
- iOS UIAlertController中UITextField添加晃動(dòng)效果與邊框顏色詳解
相關(guān)文章
iOS中利用CoreAnimation實(shí)現(xiàn)一個(gè)時(shí)間的進(jìn)度條效果
在iOS中實(shí)現(xiàn)進(jìn)度條通常都是通過(guò)不停的設(shè)置progress來(lái)完成的,這樣的進(jìn)度條適用于網(wǎng)絡(luò)加載(上傳下載文件、圖片等)。下面通過(guò)本文給大家介紹iOS中利用CoreAnimation實(shí)現(xiàn)一個(gè)時(shí)間的進(jìn)度條,需要的的朋友參考下吧2017-09-09iOS應(yīng)用程序中通過(guò)dispatch隊(duì)列控制線程執(zhí)行的方法
Grand Central Dispatch簡(jiǎn)稱(GCD)是蘋(píng)果公司開(kāi)發(fā)的技術(shù),以優(yōu)化的應(yīng)用程序支持多核心處理器和其他的對(duì)稱多處理系統(tǒng)的系統(tǒng),iOS應(yīng)用程序中通過(guò)dispatch隊(duì)列控制線程執(zhí)行則是以并發(fā)來(lái)達(dá)到多核優(yōu)化的重要途徑.2016-05-05Objective-C處理空字符串和頁(yè)面?zhèn)髦导白远x拷貝
這篇文章主要介紹了Objective-C處理空字符串和頁(yè)面?zhèn)髦导白远x拷貝的相關(guān)方法,在iOS應(yīng)用項(xiàng)目開(kāi)發(fā)中經(jīng)常會(huì)用到,需要的朋友可以參考下2016-01-01如何利用FutureBuilder提高開(kāi)發(fā)效率
這篇文章主要給大家介紹了關(guān)于如何利用FutureBuilder提高開(kāi)發(fā)效率的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07iOS實(shí)現(xiàn)UITableView數(shù)據(jù)為空時(shí)的提示頁(yè)面
最近工作中遇到一個(gè)需求,當(dāng)UITableView數(shù)據(jù)為空的時(shí)候,給出一個(gè)簡(jiǎn)單的提示頁(yè)面,通過(guò)從網(wǎng)上查找解決的方法,發(fā)現(xiàn)了兩種實(shí)現(xiàn)的方法,現(xiàn)在分享給大家,有需要的朋友們可以參考借鑒,下面感興趣的朋友們來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2016-11-11iOS應(yīng)用開(kāi)發(fā)中UIScrollView滾動(dòng)視圖的基本用法總結(jié)
這篇文章主要介紹了iOS應(yīng)用開(kāi)發(fā)中UIScrollView滾動(dòng)視圖的基本用法總結(jié),作者還介紹了重寫(xiě)UIScrollView中的hitTest方法來(lái)解決長(zhǎng)按的事件問(wèn)題,需要的朋友可以參考下2016-02-02解決Xcode8打包上傳構(gòu)建版本無(wú)效的辦法
這篇文章主要介紹的是自己在打包上傳項(xiàng)目的時(shí)候遇到的一個(gè)問(wèn)題,通過(guò)自己的努力一步步解決了,現(xiàn)將解決方法方法分享給大家,希望給同樣遇到這個(gè)問(wèn)題的朋友們能有所幫助,下面來(lái)一起看看吧。2016-09-09