Программирование на iOS: UITextField, слушайте событие не в фокусе - PullRequest
0 голосов
/ 07 апреля 2011

Как я могу прослушать событие unocus в UITextFiekd?

Я бы создал своего рода обработчик, который активируется, когда мое текстовое поле теряет фокус.Например, если я щелкаю в другой части приложения, этот слушатель автоматически регистрирует текст внутри UITextField.

Спасибо.

Ответы [ 3 ]

2 голосов
/ 07 апреля 2011

Существует UITextFieldTextDidEndEditingNotification , когда текстовое поле подает в качестве первого респондента. Вы также можете использовать метод делегата textFieldDidEndEditing: .

0 голосов
/ 07 апреля 2011

Два шага. Сначала определите делегата. Во-вторых, реализуйте метод делегата textFieldDidEndEditing:. Этот селектор вызывается, когда

текстовое поле подает первый статус респондента.

Это iOS-разговор для потери фокуса. Документация здесь .

0 голосов
/ 07 апреля 2011

Вы можете добавить пользовательское уведомление в синглтон центра уведомлений по умолчанию.

Начните с настройки метода в ваших текстовых полях. Контроллер представления суперпредставлений, который содержит код, который вы хотите выполнить при выходе из текстового полязрения:

-(void)textFieldLostFocus{
    //do some work here... 
}

Затем добавьте наблюдателя в центр уведомлений по умолчанию.(Вы можете поместить это в viewDidLoad)

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textFieldLostFocus) 
                                                 name:@"TextFieldDidLoseFocus" object:nil];

А затем в контроллер представления Superviews UITextfield добавьте это:

-(void)viewDidDisappear:(BOOL)animated{
    [[NSNotificationCenter defaultCenter] postNotificationName:@"TextFieldDidLoseFocus" object:self userInfo:nil];
}

Когда представление выходит из поля зрения, ваш пользовательский методбудет вызван центром уведомлений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...