Пример UITextField ResignFirstResponder с Monotouch - PullRequest
5 голосов
/ 16 марта 2010

Я новичок. Я не могу понять, как и где вызвать ResignFirstResponder, чтобы избавиться от клавиатуры, когда пользователь закончил вводить текст в UITextField. Я немного смущен классом UIResponder. В документации Mono говорится: «Чтобы убрать клавиатуру, отправьте сообщение UIResponder.ResignFirstResponder в текстовое поле, которое в данный момент является первым респондентом». Как это сделать? Может кто-нибудь опубликовать простой рабочий пример? Есть много примеров в Obj-C, но нет ни одного в C #. Большое спасибо.

1 Ответ

17 голосов
/ 16 марта 2010

Вот пример, который я недавно сделал :

private UITextField _textField;

public override void ViewDidLoad()
{
    _textField = new UITextField();
    _textField.Text = "King Alfonso III";
    _textField.Bounds = bounds;
    _textField.Placeholder = "Username";
    _textField.ShouldReturn = delegate
    {
        _textField.ResignFirstResponder();
        return true;
    };
    View.AddSubview(_textField);
}

Также, если вы отправили форму с кнопкой, убедитесь, что вы отказались от всех текстовых полей при нажатии кнопки, чтобы избежать ошибок респондента.

public void ButtonClick(object sender, EventArgs e)
{
    _textField.ResignFirstResponder();
    // All other textboxes

    // Other button logic
}
...