Я создал собственный UIViewController с одним UITextField на раскадровке. На viewDidLoad
я установил UITextFIeld на becomeFirstResponder
, ничего не произошло (клавиатуры не появлялись).
Затем я попытался вызвать resignFirstResponder()
, но он вернул ложь. Затем я попытался найти, кто first responder
, зациклив все подпредставления, используя код над @ Получить текущий первый ответчик без использования частного API. Оказывается, ни одно из подпредставлений не является первым ответчиком.
Мой ViewController в раскадровке
Мой код
class BLTestViewController: UIViewController, UITextFieldDelegate {
@IBOutlet var tf: UITextField
override func viewDidLoad() {
super.viewDidLoad()
tf.delegate = self
tf.becomeFirstResponder()
// Do any additional setup after loading the view.
}
}
Все просто... ПОЧЕМУ НЕ ПОДНИМАЕТСЯ КЛАВИАТУРА!!! У меня есть одна вещь — автоматическая раскладка, но я не уверен, влияет ли это на всплывающую клавиатуру.
viewWill/DidAppear:
. - person duci9y   schedule 18.08.2014tf.becomeFirstResponder()
вfunc textFieldShouldBeginEditing(textField: UITextField!) -> Bool
, где я в конечном итоге хочу быть, и позже, чемviewDidAppear
, но получил исключение BAD Access Exception. - person blee908   schedule 18.08.2014becomeFirstResponder()
изtextFieldShouldBeginEditing()
- person Aaron Brager   schedule 18.08.2014