Ответ 1
Думаю, вам лучше повезти, используя полный экземпляр UIViewController
вместо UIActionSheet
. Добавление поведения клавиатуры в лист действий будет затруднительным, если не невозможным.
Если вы создаете подкласс UIViewController
, вы можете сделать делегат вашего приложения представленным в -application:didFinishLaunchingWithOptions:
. Предполагая, что вы используете какой-то UIViewController
или UINaviagtionController
для вашего основного интерфейса, вы могли бы представить контроллер представления пароля при запуске с помощью UIViewController
- presentModalViewController:animated:
.
После того, как у вас есть контроллер просмотра паролей, вам нужно добавить UITextField
для ввода пароля. Сделайте текстовое поле firstResponder
(вызывая becomeFirstResponder
на нем), и это вызовет отображение клавиатуры. Вы также можете установить свойство keyboardAppearance
в текстовое поле, чтобы контролировать, как появляется клавиатура, например, если вы хотите ограничить числовой PIN-код и полный пароль. Установка свойства secureTextEntry
также может быть желательной для предотвращения отображения фактического пароля. См. Протокол UITextInputTraits
на UITextField
для обеих этих параметров.
Чтобы сделать приложение безопасным, вы должны создать свой контроллер просмотра паролей, чтобы он не имел кнопок или параметров навигации, кроме кнопки "Отправить" или "Войти". Если пользователь вводит правильный пароль, вы отклоняете контроллер модального представления и впускаете его. Если они не знают пароль, их единственный выбор - нажать кнопку "Домой", чтобы выйти из приложения, поскольку у них не будет возможности продолжить вне модального контроллера.