2012-02-24 82 views
1

如何在iOS> = 4中阻止輸入(類似於userInteractionEnabled = NO)的鍵盤?用於輸入的塊鍵盤

鍵盤用於TextEdit。

如果我禁用textedit的交互,然後鍵盤消失,但我想看到鍵盤。

+0

哪個UI控件?就我所知,大多數(如果不是所有的控件)仍然有一個userInteractionEnabled屬性? – JiaYow 2012-02-24 11:22:26

+0

答案在你的問題本身! userInteractionEnabled = NO; – Selvin 2012-02-24 11:23:15

+0

userInteractionEnabled = NO; - >不起作用,鍵盤消失! – 2012-02-24 11:30:28

回答

1

樂心,我想你需要考慮不同的方法,無論你正在試圖通過限制爲兩個很好的理由鍵盤輸入來實現:

  1. 一個的UIElement接合用戶類型,但對任何用戶的手勢沒有反應肯定會被蘋果拒絕。

  2. 由於此鍵盤在操作系統級別上,因此它是私有API,我非常肯定您沒有辦法阻止對鍵的訪問。

希望這有助於

+0

嗯,蘋果的Pass Lock怎麼樣?他們也阻止鍵盤! – 2012-02-24 11:40:08

+0

通過做什麼?你只是看到一個鍵盤上沒有阻擋/阻擋視圖,它沒有反應?禁用時看起來不同嗎? – Stavash 2012-02-24 11:42:25

+0

與蘋果通行證鎖定相同的原理,經過5次嘗試阻止某個時間間隔後... – 2012-02-24 11:48:05

4

你試過這種委託?

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string 
+0

就像他說的那樣,使用該功能,並簡單地返回no。鍵盤可能仍然是活動的,但所有的輸入將被阻止 – BBog 2012-02-24 13:04:14

0

你總是可以在鍵盤視圖禁用userInteractionEnabled,或者不太危險的添加不可見的子視圖鍵盤阻止互動。有關如何獲取鍵盤的UIView,請參閱iOS: How to access the `UIKeyboard`?