Вопрос

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

Это было полезно?

Решение

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

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
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top