ios - iphone鍵盤符號 - iphone鍵盤設定
如何使iPhone上的返回鍵使鍵盤消失? (10)
Swift 2:
這就是做什麼做每件事情!
用Done
按鈕關閉鍵盤或Touch outSide
, Next
轉到下一個輸入。
在StoryBoard上首先更改TextFiled Return Key
。
override func viewDidLoad() {
txtBillIdentifier.delegate = self
txtBillIdentifier.tag = 1
txtPayIdentifier.delegate = self
txtPayIdentifier.tag = 2
let tap = UITapGestureRecognizer(target: self, action: "onTouchGesture")
self.view.addGestureRecognizer(tap)
}
func textFieldShouldReturn(textField: UITextField) -> Bool {
if(textField.returnKeyType == UIReturnKeyType.Default) {
if let next = textField.superview?.viewWithTag(textField.tag+1) as? UITextField {
next.becomeFirstResponder()
return false
}
}
textField.resignFirstResponder()
return false
}
func onTouchGesture(){
self.view.endEditing(true)
}
我有兩個UITextFields
(例如用戶名和密碼),但當按下鍵盤上的返回鍵時,我無法擺脫鍵盤。 我怎樣才能做到這一點?
你的UITextFields應該有一個委託對象(UITextFieldDelegate)。 在委託中使用以下代碼來使鍵盤消失:
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
}
應該工作到目前為止...
在swift中你應該委託UITextfieldDelegate ,它的重要性不要忘記它,在viewController中,像:
class MyViewController: UITextfieldDelegate{
mytextfield.delegate = self
func textFieldShouldReturn(textField: UITextField) -> Bool {
textField.resignFirstResponder()
}
}
如果您想在提醒框文本文件上書寫時消失鍵盤
[[alertController.textFields objectAtIndex:1] resignFirstResponder];
帶給我幾個試驗,有同樣的問題,這對我工作:
檢查你的拼寫 -
(BOOL)textFieldShouldReturn:(UITextField *)textField {
[textField resignFirstResponder];
我更正了textField
而不是textfield
,將大寫字母“F”...和賓果! 有效..
您可以嘗試使用此UITextfield子類,您可以為文本設置條件以動態更改UIReturnKey:
https://github.com/codeinteractiveapps/OBReturnKeyTextField
按下返回鍵時,請致電:
[uitextfield resignFirstResponder];
添加此代替預定義的類
class ViewController: UIViewController, UITextFieldDelegate {
在鍵盤外部點擊時移除鍵盤
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
self.view.endEditing(true)
}
並在按下鍵盤時刪除輸入
在viewDidLoad()中添加這一行
inputField是使用的textField的名稱。
self.inputField.delegate = self
並添加此功能
func textFieldShouldReturn(textField: UITextField) -> Bool {
textField.resignFirstResponder()
return true
}
請參閱管理鍵盤以獲得有關此主題的完整討論。
首先,你需要符合你的View / ViewController頭文件中的UITextFieldDelegate
協議,如下所示:
@interface YourViewController : UIViewController <UITextFieldDelegate>
然後在您的.m文件中,您需要實現以下UITextFieldDelegate
協議方法:
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
[textField resignFirstResponder];
確保鍵盤被解除。
在初始化.m中的文本字段之後,請確保將view / viewcontroller設置為UITextField的委託:
yourTextField = [[UITextField alloc] initWithFrame:yourFrame];
//....
//....
//Setting the textField's properties
//....
//The next line is important!!
yourTextField.delegate = self; //self references the viewcontroller or view your textField is on