2015-04-29 2 views
0

Я добавил функцию в свой код с помощью Swift, который позволяет пользователю ударить по возвращению на клавиатуре, чтобы отклонить его, но он не работает, и я не уверен, почему. Может ли кто-нибудь привести меня в правильном направлении, пожалуйста?Почему моя функция textField не работает?

class SecondViewController: UIViewController, UITextFieldDelegate { 

    @IBOutlet weak var item: UITextField! 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     // Do any additional setup after loading the view, typically from a nib. 
    } 

    @IBAction func addItem(sender: AnyObject) { 

     toDoList.append(item.text) 
     item.text = "" 

     NSUserDefaults.standardUserDefaults().setObject(toDoList, forKey: "toDoList") 


    } 
    override func didReceiveMemoryWarning() { 
     super.didReceiveMemoryWarning() 
     // Dispose of any resources that can be recreated. 
    } 

    override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) { 
     self.view.endEditing(true) 
    } 

    func textFieldShouldReturn(textField: UITextField!) -> Bool { 

     item.resignFirstResponder() 
     return true 
    } 

} 

ответ

0

Сделать это изменение:

func textFieldShouldReturn(textField: UITextField!) -> Bool { 

    textField.resignFirstResponder() 
    return true 
} 

И убедитесь, что делегат UITextField устанавливается на экземпляр SecondViewController.

0

установить делегат в viewDidLoad:

item.delegate = self 

Тогда распускать TextField, как так:

func textFieldShouldReturn(textField: UITextField!) -> Bool { 
    if textField == item { 
     item.resignFirstResponder() 
    } 
    return true 
} 
Смежные вопросы