2014-11-08 143 views
3

我正在使用Xcode 6和Swift。我有一些文本字段,並且我已經將它們的inputView屬性分配給我已經實例化的拾取器視圖var examplePickerView : UIPickerView = UIPickerView()如何自定義第一響應者swift

當按下textField進行編輯時,這具有顯示拾取器視圖而不是傳統鍵盤的效果。問題在於textField.resignFirstResponder()不會像傳統鍵盤那樣使用選擇器視圖。我曾嘗試將選取器視圖分配爲第一響應者屬性,但沒有運氣。

回答

3

你只需要調用:

self.view.endEditing(true) 

這將辭職pickerView。

+0

這不起作用 – yaboi 2014-12-19 20:17:34

+0

我只是想上一個項目,它的作用。 那你能給出更多解釋嗎?也許你有一些你沒給的細節... – 2014-12-20 11:31:11

+0

我發現問題的根源是不同的。我將打印語句放在輕擊和輕掃手勢動作函數中,並且不會識別任何手勢! – yaboi 2015-06-16 06:00:09

0

問題可能出在你辭職的第一個響應者。另外,我相信你不需要將文本字段設置爲第一響應者,因爲當你點擊它進行編輯時它就成爲第一響應者。

0

必須使用協議UITextFieldDelegate

例子:

class ViewController: UIViewController, UITextFieldDelegate { 
var textField : UITextField! 

func textFieldShouldReturn(textField: UITextField) -> Bool { 
    textField.resignFirstResponder() 
    return true 
} 
override func viewDidLoad() { 
    super.viewDidLoad() 

    textField = UITextField(frame: CGRect(x: 0, y: 0, width: view.bounds.width - 100, height: 50)) 
    textField.delegate = self 
    view.addSubview(textField) 

}