iPad的虛擬鍵盤將在(至少)三種情況消失:檢測iPad鍵盤隱藏與外部鍵盤連接?
- 如果控制(比如,爲UITextField)編程辭職第一響應。
- 如果用戶點擊右下方的「解除鍵盤」按鈕。
- 如果用戶連接到USB /鍵盤擴展塢。
在所有情況下,我得到UIKeyboardWillHideNotification
。
問題是,前兩種情況通常是等同的 - 換句話說,用戶已經完成編輯文本字段。但在第三種情況下,文本字段仍在編輯中,僅來自另一個輸入源。
問題是檢測情況2和3之間的區別。我在這兩種情況下都得到的是UIKeyboardWillHideNotification
。在情況2中,我通常也想鎖定編輯控件並提交值。在情況3中,我通常不想做任何事情,並允許編輯繼續。
但是,我該如何區分?
Apple's Pages應用程序似乎能夠區分文檔標題重命名。
遺憾的是沒有。物理鍵盤在出現時不會生成UIKeyboardWillShowNotification。附加它只會產生一個與虛擬相對應的WillHide通知。 – 2010-05-20 18:28:30
在情況1中,控制失去焦點。情況2也一樣嗎?我假設情況3控制權保留焦點。 – drawnonward 2010-05-21 09:47:14
在情況2和3中,控件繼續爲firstResponder。辭職的第一響應者會解僱鍵盤,但相反的情況並非如此。 – 2010-05-21 19:52:57