創(chuàng)建一個(gè)UITextField醇滥,彈出鍵盤(pán)片吊,但會(huì)遇到一個(gè)問(wèn)題换团,鍵盤(pán)會(huì)擋住界面或者希望當(dāng)點(diǎn)擊其他地方時(shí)鍵盤(pán)收起凡怎。
參考官方文檔:(文檔中有部分代碼解釋)https://developer.apple.com/library/ios/documentation/StringsTextFonts/Conceptual/TextAndWebiPhoneOS/KeyboardManagement/KeyboardManagement.html
方法一:點(diǎn)擊鍵盤(pán)外的地方收起鍵盤(pán)
情形A:在想要收起鍵盤(pán)的地方(一般是回車鍵校焦,或 鍵盤(pán)tabbar的“確認(rèn)”鍵)
輸入 下面的代碼:
[myTextField resignFirstResponder]; ? //myTextField ?創(chuàng)建的UITextField的名稱
(意思是使myTextField失去中心)
情形B:點(diǎn)擊屏幕空白處,收起鍵盤(pán)
重寫(xiě)方法
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{
[myTextField resignFirstResponder]; // 空白處收起
}
情形c:多個(gè)UI,畫(huà)面疊加(比如彈出的pickview,image等)
先個(gè)UI設(shè)置tag垦缅,系統(tǒng)withTag找到這個(gè)UI匀们,在調(diào)用UI的地方
[myTextField resignFirstResponder]; // 先收起TextField
方法二:鍵盤(pán)彈出時(shí),整個(gè)界面往上推购城,輸入完成后,收起鍵盤(pán)(更好)
顧名思義,就是在鍵盤(pán)彈出時(shí)井氢,整個(gè)界面往上推送,重新設(shè)置contentoffset岳链。適合在TextField在頁(yè)面下方花竞,可能被鍵盤(pán)遮擋的情況。