iOS. Приемы программирования. Вандад Нахавандипур
Чтение книги онлайн.

Читать онлайн книгу iOS. Приемы программирования - Вандад Нахавандипур страница 19

СКАЧАТЬ класса UIAlertView. Все готово!

      Кроме того, вид-предупреждение можно использовать и для текстового ввода, например, запрашивая у пользователя номер кредитной карточки или адрес. Для этого, как было указано ранее, нужно использовать стиль оформления предупреждения UIAlertViewStylePlainTextInput:

      – (void) viewDidAppear:(BOOL)animated{

      [super viewDidAppear: animated];

      UIAlertView *alertView = [[UIAlertView alloc]

      initWithTitle:@"Credit Card Number"

      message:@"Please enter your credit card number: "

      delegate: self

      cancelButtonTitle:@"Cancel"

      otherButtonTitles:@"OK", nil];

      [alertView setAlertViewStyle: UIAlertViewStylePlainTextInput];

      /* Отобразить для этого текстового поля числовую клавиатуру. */

      UITextField *textField = [alertView textFieldAtIndex:0];

      textField.keyboardType = UIKeyboardTypeNumberPad;

      [alertView show];

      }

      Если сейчас запустить приложение в эмуляторе, то мы увидим такое изображение, как на рис. 1.4.

      Рис. 1.4. Вид-предупреждение для ввода обычным текстом

      В этом коде мы изменяем стиль оформления вида на UIAlertViewStylePlainTextInput, а также делаем еще кое-что. Мы получили ссылку на первое и единственное текстовое поле, которое, как мы знаем, будет присутствовать в виде-предупреждении. Ссылку на текстовое поле применили для того, чтобы изменить тип клавиатуры, связанной с текстовым полем. Подробнее о текстовых полях поговорим в разделе 1.19.

      Кроме обычного текста мы можем попросить пользователя набрать и защищенный текст. Как правило, защищается такой текст, который является для пользователя конфиденциальным, например пароль (рис. 1.5). Рассмотрим пример:

      – (void) viewDidAppear:(BOOL)animated{

      [super viewDidAppear: animated];

      UIAlertView *alertView = [[UIAlertView alloc]

      initWithTitle:@"Password"

      message:@"Please enter your password: "

      delegate: self

      cancelButtonTitle:@"Cancel"

      otherButtonTitles:@"OK", nil];

      [alertView setAlertViewStyle: UIAlertViewStyleSecureTextInput];

      [alertView show];

      }

      Рис. 1.5. Ввод защищенного текста в окно с предупреждением

      Стиль UIAlertViewStyleSecureTextInput очень напоминает UIAlertViewStylePlainTextInput, за исключением того, что вместо символов текста мы подставляем какие-то нейтральные символы.

      Следующий стиль довольно полезный. Он позволяет отобразить два текстовых поля: одно для имени пользователя, а другое – для пароля. Текст в первом поле открыт, а во втором – скрыт:

      – (void) viewDidAppear:(BOOL)animated{

      [super viewDidAppear: animated];

      UIAlertView *alertView = [[UIAlertView alloc]

      initWithTitle:@"Password"

      message:@"Please enter your credentials: "

      delegate: self

      cancelButtonTitle:@"Cancel"

      otherButtonTitles:@"OK", nil];

      [alertView setAlertViewStyle: UIAlertViewStyleLoginAndPasswordInput];

      [alertView show];

      }

      В результате увидим такое изображение, как на рис. 1.6.

СКАЧАТЬ