它需要從數字和標點鍵盤禁用'&'鍵,那麼是否可以禁用UIKeyboard中的特定鍵?禁用UI鍵盤中的特定鍵
回答
我不認爲有可能禁用某個鍵(除非它是諸如返回鍵之類的操作鍵之一),但如果您使用的是UITextField,則可以使用- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
委託方法來查看用戶是否按下了&鍵並將其從字符串中刪除
您不能這樣做。但是你的選擇是:
- 如果使用
UITextField
可以驗證提交的用戶文本創建不offerring「&」鍵,自定義的鍵盤(太多精力IMO) - :刪除「&」和/或通知用戶不允許使用'&'(更容易)。
編輯:你也可以的UITextField的「編輯而改變」事件連接到文件的所有者的IBAction爲,並篩選出「&」在那裏。
+1感謝您的迴應。:) – rptwsthi
據我所知,你不能直接禁用UIKeyboard上的特定按鈕。我沒有做過這樣的事情,但我知道你可以添加新的按鈕作爲子視圖到鍵盤,所以也許你可以做到這一點,並禁用該特定按鈕上的userInteraction。
鏈接顯示添加一個按鈕的鍵盤子視圖的例子:
沒有爲文本框一個委託方法,其中,如果你根據自己的ASCII值願意,你可以阻止特定的字符。
-(BOOL)keyboardInput:(id)k shouldInsertText:(id)i isMarkedText:(int)b
{
char s=[i characterAtIndex:0];
if(selTextField.tag==1)
{
if(s>=48 && s<=57 && s == 38) // 48 to 57 are the numbers and 38 is the '&' symbol
{
return YES;
}
else
{
return NO;
}
}
}
此方法只允許數字和符號&由用戶輸入:該方法可以按如下方式寫入。即使用戶按下其他字符,也不會輸入。因爲它是一個textField的委託方法,所以您不必擔心顯式調用它。
+1爲偉大的解決方案,這將有助於許多人。 – rptwsthi
//Disabling the '<' '>' special characters key in Keyboard in my code
- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
{
NSCharacterSet *nonNumberSet = [NSCharacterSet characterSetWithCharactersInString:@"<>"];
if (range.length == 1)
return YES;
else
return ([text stringByTrimmingCharactersInSet:nonNumberSet].length > 0);
return YES;
}
嘗試代替'&'代替'&',它會起作用 – balajiaj
- 1. 禁用鍵盤的特定窗口
- 2. 禁用鍵盤上的鍵
- 3. 如何禁用網頁上的特定鍵盤按鍵?
- 4. jquery禁用鍵盤按鍵
- 5. 禁用鍵盤快捷鍵
- 6. 禁用GTKTreeView中的鍵盤快捷鍵
- 7. 當禁用鍵盤
- 8. 禁用Android鍵盤
- 9. 在android軟鍵盤中禁用/檢測鍵盤解鎖鍵
- 10. 禁用外部鍵盤的鍵盤快捷鍵
- 11. 如何禁用特殊的鍵盤按鍵?
- 12. 禁用鍵盤jQuery的
- 13. 使用shadowbox禁用鍵盤快捷鍵?
- 14. 如何禁用所有鍵盤按鍵?
- 15. 禁用iPhone鍵盤切換鍵
- 16. Android禁用鍵盤按鍵反饋
- 17. uwp禁用Richeditbox鍵盤快捷鍵
- 18. Android禁用軟鍵盤輸入鍵
- 19. vbnet禁用組合鍵盤快捷鍵
- 20. 如何禁用特定EditText的硬件鍵盤?
- 21. 如何禁用特定活動的Android軟鍵盤?
- 22. 如何禁用Kendo UI TabStrip中的鍵盤導航?
- 23. Lwuit禁用虛擬鍵盤
- 24. 禁用多個edittexts鍵盤
- 25. 禁用屏幕鍵盤
- 26. 禁用軟鍵盤爲EDITTEXT
- 27. 禁用鍵盤和鼠標
- 28. iPhone - 臨時禁用鍵盤
- 29. 禁用android鍵盤按鈕
- 30. 我可以禁用鍵盤輸入到特定控件嗎?
對你而言,'e'? :) – fatty