偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

iOS開發(fā)隱藏鍵盤方法總結(jié)

移動開發(fā) iOS
關(guān)于隱藏軟鍵盤,網(wǎng)上的辦法良莠不齊,大多是通過實現(xiàn)UITextFieldDelegate來隱藏軟鍵盤,該方法代碼較多,且在文本框很多的時不好處理。我經(jīng)過搜索與摸索,找到了最佳的處理辦法。

下面為大家?guī)砦艺砜偨Y(jié)的幾種隱藏鍵盤的方法。

一、隱藏自身軟鍵盤

當(dāng)對于有多個UITextField控件都想通過點擊“Return”來隱藏自身軟鍵盤的情況,這時的最好辦法是使用Did End on Exit事件。在點擊軟鍵盤右下角的“Return”按鈕后,會觸發(fā)該事件。
該事件有一個sender參數(shù)表示當(dāng)前文本框,這樣便可以編寫一個通用的事件處理方法(.m文件)——

  1. - (IBAction)TextField_DidEndOnExit:(id)sender { 
  2.     // 隱藏鍵盤. 
  3.     [sender resignFirstResponder]; 

然后在.h文件中填寫該方法的聲明——

  1. - (IBAction)TextField_DidEndOnExit:(id)sender; 

回到storyboard,并按command+option+enter打開輔助窗口,使輔助窗口顯示.h文件。 選中一個UITextField控件,點擊鼠標(biāo)右鍵彈出面板,鼠標(biāo)左鍵按住Did End on Exit事件旁邊的圓圈,然后拖曳到右側(cè).h文件的TextField_DidEndOnExit方法上,便會建立好事件連接。 隨后按照同樣的做法,將其他UITextField控件的Did End on Exit事件也連接到TextField_DidEndOnExit方法。

運行一下,可發(fā)現(xiàn)每個文本框的軟鍵盤都可以通過點擊“Return”來隱藏了。

二、點擊Return自動轉(zhuǎn)到下個文本框

當(dāng)頁面中有很多個文本框時,如果每次都需要點文本框激活軟鍵盤、輸入后點擊Return隱藏軟鍵盤、再點擊下一個文本框……這樣操作起來太繁瑣了。 于是我們希望能夠?qū)崿F(xiàn)點擊Return時能夠自動轉(zhuǎn)到下一個文本框。尤其是對于最后一個文本框,希望能夠在點擊Return時執(zhí)行下一步操作。

例如對于登錄頁面。它上面有 賬號文本框(nameTextField)、密碼文本框(passTextField)、登錄按鈕(loginButton)。
我們希望——點擊賬號文本框軟鍵盤的Return時跳轉(zhuǎn)到密碼文本框,點擊密碼文本框軟鍵盤的Return時執(zhí)行登錄。
因為這兩個文本框的功能不同,不能像上一節(jié)那樣寫一個TextField_DidEndOnExit做統(tǒng)一處理,而應(yīng)該分別建立各自的事件處理方法。

回到storyboard,右擊賬號文本框(nameTextField)彈出面板,按住Did End on Exit事件旁邊的圓圈,然后拖曳到右側(cè).h文件的空白地方,此時會彈出一個對話框給方法命名。輸入名稱 (nameTextField_DidEndOnExit)后回車確定,便自動生成了該事件方法。
隨后按照同樣的做法,為密碼文本框(passTextField)的Did End on Exit事件連接方法(passTextField_DidEndOnExit)。
來到.m文件,填寫具體代碼——

  1. - (IBAction)nameTextField_DidEndOnExit:(id)sender { 
  2.     // 將焦點移至下一個文本框. 
  3.     [self.passTextField becomeFirstResponder]; 
  4. - (IBAction)passTextField_DidEndOnExit:(id)sender { 
  5.     // 隱藏鍵盤. 
  6.     [sender resignFirstResponder]; 
  7.     // 觸發(fā)登陸按鈕的點擊事件. 
  8.     [self.loginButton sendActionsForControlEvents:UIControlEventTouchUpInside]; 

  對于賬號文本框轉(zhuǎn)密碼文本框,不需要隱藏軟鍵盤,只需要調(diào)用becomeFirstResponder激活新的文本框就行了。
對于密碼文本框Return后執(zhí)行登錄。因為不再需要顯示軟鍵盤,所以還是得調(diào)用resignFirstResponder隱藏軟鍵盤,然后觸發(fā)登錄按鈕(loginButton)的UIControlEventTouchUpInside事件進行登錄。

  運行一下,可發(fā)現(xiàn)已經(jīng)達到我們希望的效果了。點擊賬號文本框軟鍵盤的Return時跳轉(zhuǎn)到密碼文本框,點擊密碼文本框軟鍵盤的Return時執(zhí)行登錄。
怎么都是“Return”,轉(zhuǎn)換文本框與執(zhí)行登錄明明是不同的功能?
于是將賬號文本框的Return Key屬性設(shè)為“Next”,將密碼文本框的Return Key屬性設(shè)為“Done”,使界面與功能一致。

三、輕觸背景隱藏軟鍵盤

  只能通過Return關(guān)閉軟鍵盤太不靈活了,應(yīng)該提供輕觸背景隱藏軟鍵盤的功能。

  在storyboard,點擊背景View,將它的Custom Class設(shè)置為UIControl,這樣才會出現(xiàn)Touch Down事件。
右擊背景View彈出面板,按住Touch Down事件旁邊的圓圈,然后拖曳到右側(cè).h文件的空白地方建立該事件的處理方法。
來到.m文件,填寫具體代碼——

  1. - (IBAction)View_TouchDown:(id)sender { 
  2.     // 發(fā)送resignFirstResponder. 
  3.     [[UIApplication sharedApplication] sendAction:@selector(resignFirstResponder) to:nil from:nil forEvent:nil]; 

把這些方法分享給大家希望能對讀者朋友們有所幫助。

責(zé)任編輯:閆佳明 來源: cnblogs
相關(guān)推薦

2013-07-25 14:12:53

iOS開發(fā)學(xué)習(xí)UITableView

2013-09-12 15:37:09

iOS開發(fā)流程

2017-01-19 21:45:27

iOS開發(fā)者賬號

2009-12-24 18:09:23

WPF開發(fā)環(huán)境

2014-06-10 14:19:52

iOSUIApplicati總結(jié)

2013-01-06 09:52:43

SQLite

2013-04-09 16:04:06

iOS開發(fā)SQLite知識總結(jié)

2014-03-12 10:13:00

iOSSEL對象

2010-08-03 09:54:09

路由器IOS

2011-08-19 15:09:00

IOS開發(fā)

2015-05-05 10:51:32

php頁面跳轉(zhuǎn)方法

2019-01-02 13:45:19

2015-07-08 16:46:05

iOS鍵盤

2014-02-19 09:59:52

iOS開發(fā)Html解析

2013-06-14 11:21:43

iOS開發(fā)移動開發(fā)畫圖

2014-06-27 14:36:03

iOS演示APP原型

2020-10-22 10:09:04

Facebook AIVR

2014-06-10 13:44:58

iOSUIImage知識點

2015-07-20 10:54:47

IOS提高效率工具

2011-08-15 17:58:22

IOS開發(fā)編碼轉(zhuǎn)換
點贊
收藏

51CTO技術(shù)棧公眾號