iphone - cocoa touch教學




UITextField-捕獲返回按鈕事件 (4)

如何檢測用戶在編輯UITextField時按下“返回”鍵盤按鈕? 我需要這樣做才能在用戶按下“返回”按鈕時關閉鍵盤。

謝謝。


SWIFT 3.0

override open func viewDidLoad() {
    super.viewDidLoad()    
    textField.addTarget(self, action: #selector(enterPressed), for: .editingDidEndOnExit)
}

在enterPressed()函數中放置了所有的行為

func enterPressed(){
    //do something with typed text if needed
    textField.resignFirstResponder()
}

代表團不是必需的,這裡是一個單線:

- (void)viewDidLoad {
    [textField addTarget:textField
                  action:@selector(resignFirstResponder)
        forControlEvents:UIControlEventEditingDidEndOnExit];
}

可悲的是,你不能直接在你的Storyboard中執行此操作(不能將操作連接到在Storyboard中發布它們的控件),但是可以通過中介操作來完成此操作。


- (BOOL)textFieldShouldReturn:(UITextField *)textField {
    [textField resignFirstResponder];
    return NO;
}

不要忘記設置故事板中的代表...


- (BOOL)textFieldShouldReturn:(UITextField *)txtField 
{
[txtField resignFirstResponder];
return NO;
}

當輸入按鈕被點擊時,這個委託方法被調用。你可以從這個委託方法中捕獲返回按鈕。





cocoa-touch