Как настроить UIAlertView? Apple одобрит это? - PullRequest
6 голосов
/ 19 апреля 2011

Я использую пользовательский UIAlertView с UITextField для получения пароля от пользователя.

Мне сказали, что это пользовательское представление может привести к отклонению моего приложения Apple; это верно? Если да, то какая замена для моего пользовательского элемента управления?

Ответы [ 8 ]

11 голосов
/ 19 апреля 2011

Вы можете добавить текстовое поле в свой UIAlertView

UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"title" message:@"msg" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:nil];
UITextField *txtField = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 45.0, 260.0, 25.0)];
[alertView addSubview:txtField];
[alertView show];
[alertView release];
4 голосов
/ 19 апреля 2011

Смотрите мой пост в блоге о том, как это сделать, и его прекрасно принятый код от Apple. Я добавил это в некоторые из моих приложений, и все они были приняты. Так что используйте его без страха !!

Вот код, который вы можете использовать:

UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:@"Your title here!" message:@"this gets covered" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil];
UITextField *myTextField = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 45.0, 260.0, 25.0)];
[myTextField setBackgroundColor:[UIColor whiteColor]];
[myAlertView addSubview:myTextField];
CGAffineTransform myTransform = CGAffineTransformMakeTranslation(0.0, 130.0);
[myAlertView setTransform:myTransform];
[myAlertView show];
[myAlertView release];
2 голосов
/ 19 апреля 2011

Обратитесь к руководству по блогу ниже для полного решения.

http://junecloud.com/journal/code/displaying-a-password-or-text-entry-prompt-on-the-iphone.html?cmd=success#comment3870

1 голос
/ 06 июля 2012

Я думаю, что есть лучший способ решить эту проблему.Вот фрагмент кода

UIAlertView *passwordAlert = [[UIAlertView alloc]                                       
                              initWithTitle:@"Enter Password" message:@""
                              delegate:self 
                              cancelButtonTitle:nil                    
                              otherButtonTitles:@"Submit", nil];

passwordAlert.alertViewStyle = UIAlertViewStyleSecureTextInput;

(Вы можете найти соответствующие реализации в блоге prodeveloper )

Но это прекрасно работает только на iOS 5.0 и выше.Пожалуйста, запишите это.И Apple, безусловно, одобрит это.

1 голос
/ 13 апреля 2012

Цитирование из ссылки на класс

Класс UIAlertView предназначен для использования как есть и не поддержка подклассов. Иерархия представления для этого класса является частной и не должны быть изменены.

Последнее предложение мне кажется, что они не хотят, чтобы разработчики модифицировали представления.

1 голос
/ 29 февраля 2012

iOS 5 теперь поддерживает это изначально.Проверьте свойство alertViewStyle UIAlertView.

1 голос
/ 19 апреля 2011

Если вас беспокоит отклонение, вы всегда можете свернуть свой собственный вид с анимацией, похожей на UIAlertView.Проверьте этот вопрос здесь:

Как настроить представление предупреждений iOS?

0 голосов
/ 24 мая 2012

Я. Apple одобряет настройку UIAlertview.Начиная с iOS 5.0, Apple выдает тип просмотра предупреждений для ввода учетных данных.

Здесь я перечислил пользовательский просмотр предупреждений, который может работать на более старой версии ios и с ориентацией Пользовательский просмотр предупреждений

спасибо

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