UITextFieldDelegate
Наследование
Не применимый
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 2.0 и позже.
UITextFieldDelegate
протокол определяет сообщения, отправленные делегату текстового поля как часть последовательности редактирования ее текста. Все методы этого протокола являются дополнительными.
-
Если редактирование должно начаться в указанном текстовом поле, спрашивает делегат.
Объявление
Swift
optional func textFieldShouldBeginEditing(_
textField
: UITextField) -> BoolObjective C
- (BOOL)textFieldShouldBeginEditing:(UITextField *)
textField
Параметры
textField
Текстовое поле, для которого редактирование собирается начаться.
Возвращаемое значение
YES
true
если должен инициироваться сеанс редактирования; иначе,NO
false
запрещать редактирование.Обсуждение
Когда пользователь выполняет действие, которое обычно инициировало бы сеанс редактирования, текстовое поле вызывает этот метод сначала, чтобы видеть, должно ли фактически продолжиться редактирование. При большинстве обстоятельств Вы просто возвратились бы
YES
true
от этого метода, чтобы позволить редактировать для продолжения.Реализация этого метода делегатом является дополнительной. Если это не существует, редактируя доходы, как будто возвратился этот метод
YES
true
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Говорит делегату, что редактирование началось для указанного текстового поля.
Объявление
Swift
optional func textFieldDidBeginEditing(_
textField
: UITextField)Objective C
- (void)textFieldDidBeginEditing:(UITextField *)
textField
Параметры
textField
Текстовое поле, для которого начался сеанс редактирования.
Обсуждение
Этот метод уведомляет делегата, что указанное текстовое поле просто стало первым респондентом. Можно использовать этот метод для обновления информации делегата состояния. Например, Вы могли бы использовать этот метод для показа представлений наложения, которые должны быть видимы при редактировании.
Реализация этого метода делегатом является дополнительной.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Если редактирование должно остановиться в указанном текстовом поле, спрашивает делегат.
Объявление
Swift
optional func textFieldShouldEndEditing(_
textField
: UITextField) -> BoolObjective C
- (BOOL)textFieldShouldEndEditing:(UITextField *)
textField
Параметры
textField
Текстовое поле, для которого редактирование собирается закончиться.
Возвращаемое значение
YES
true
если должно остановиться редактирование; иначе,NO
false
если должен продолжаться сеанс редактированияОбсуждение
Когда текстовое поле просят оставить первое состояние респондента, этот метод вызывают. Это могло бы произойти, когда Ваше приложение просит, чтобы текстовое поле оставило фокус или когда пользователь пытается изменить фокус редактирования на другое управление. Прежде чем фокус фактически изменяется, однако, текстовое поле вызывает этот метод, чтобы дать Вашему делегату шанс решить, должно ли это.
Обычно, Вы возвратились бы
YES
true
от этого метода, чтобы позволить текстовому полю оставлять первое состояние респондента. Вы могли бы возвратитьсяNO
false
, однако, в случаях, где Ваш делегат обнаруживает недопустимое содержание в текстовом поле. Путем возвратаNO
false
, Вы могли препятствовать тому, чтобы пользователь переключился на другое управление, пока текстовое поле не содержало допустимое значение.Знайте, что этот метод обеспечивает только рекомендацию о том, должно ли закончиться редактирование. Даже если Вы возвращаетесь
NO
false
от этого метода возможно, что могло бы все еще закончиться редактирование. Например, когда текстовое поле вынуждено оставить первое состояние респондента, будучи удаленным из его родительского представления или окна, это могло бы произойти.Реализация этого метода делегатом является дополнительной. Если это не присутствует, первое состояние респондента оставлено, как будто возвратился этот метод
YES
true
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Говорит делегату, что редактирование остановилось для указанного текстового поля.
Объявление
Swift
optional func textFieldDidEndEditing(_
textField
: UITextField)Objective C
- (void)textFieldDidEndEditing:(UITextField *)
textField
Параметры
textField
Текстовое поле, для которого закончилось редактирование.
Обсуждение
Этот метод вызывают после того, как текстовое поле оставляет свое первое состояние респондента. Можно использовать этот метод для обновления информации делегата состояния. Например, Вы могли бы использовать этот метод для сокрытия представлений наложения, которые должны быть видимы только при редактировании.
Реализация этого метода делегатом является дополнительной.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
текстовое поле (_: shouldChangeCharactersInRange:replacementString:) - textField:shouldChangeCharactersInRange:replacementString:
Если указанный текст должен быть изменен, спрашивает делегат.
Объявление
Swift
optional func textField(_
textField
: UITextField, shouldChangeCharactersInRangerange
: NSRange, replacementStringstring
: String) -> BoolObjective C
- (BOOL)textField:(UITextField *)
textField
shouldChangeCharactersInRange:(NSRange)range
replacementString:(NSString *)string
Параметры
textField
Текстовое поле, содержащее текст.
range
Диапазон символов, которые будут заменены
string
Замещающая строка.
Возвращаемое значение
YES
true
если должен быть заменен указанный текстовый диапазон; иначе,NO
false
сохранить старый текст.Обсуждение
Текстовое поле вызывает этот метод каждый раз, когда пользователь вводит новый символ в текстовом поле или удаляет существующий символ.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Если текущее содержание текстового поля должно быть удалено, спрашивает делегат.
Объявление
Swift
optional func textFieldShouldClear(_
textField
: UITextField) -> BoolObjective C
- (BOOL)textFieldShouldClear:(UITextField *)
textField
Параметры
textField
Текстовое поле, содержащее текст.
Возвращаемое значение
YES
true
если должно быть очищено содержание текстового поля; иначе,NO
false
.Обсуждение
Текстовое поле вызывает этот метод в ответ на пользователя, нажимающего встроенную ясную кнопку. (Эта кнопка не показана по умолчанию, но может быть включена путем изменения значения в
clearButtonMode
свойство текстового поля.) Когда редактирование начинается и, этот метод также вызываютclearsOnBeginEditing
свойство текстового поля установлено вYES
true
.Реализация этого метода делегатом является дополнительной. Если это не присутствует, текст очищен, как будто возвратился этот метод
YES
true
.Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.
-
Если текстовое поле должно обработать нажатие кнопки возврата, спрашивает делегат.
Объявление
Swift
optional func textFieldShouldReturn(_
textField
: UITextField) -> BoolObjective C
- (BOOL)textFieldShouldReturn:(UITextField *)
textField
Параметры
textField
Текстовое поле, кнопка возврата которого была нажата.
Возвращаемое значение
YES
true
если текстовое поле должно реализовать свое поведение по умолчанию для кнопки возврата; иначе,NO
false
.Обсуждение
Текстовое поле вызывает этот метод каждый раз, когда пользователь касается кнопки возврата. Когда кнопка касается, можно использовать этот метод для реализации любого пользовательского поведения.
Оператор импорта
Objective C
@import UIKit;
Swift
import UIKit
Доступность
Доступный в iOS 2.0 и позже.