2013-09-26 1 views
0

У меня есть приложение, которое было построено на Xcode 4.6 и прошивкой 6. Я теперь его обновление с прошивкой 7 с помощью XCode 5.Ввод текста с помощью всплывающих в IOS 7

У меня есть этот код, который работал отлично на iOS 6. Что это такое, он вызывает всплывающее окно с UITextField. Пользователь может ввести любой текст и нажать ОК. Я беру их текст и помещаю его в UILabel.

Проблема у меня в том, что в iOS 7, когда я поднимаю это всплывающее текстовое поле, его нельзя редактировать. Прикосновение к нему ничего не делает. Как так?

Вот код и скриншот

// ************ 
// ENTER TEXT 
// ************ 

-(IBAction)insertText 
{ 
    UIAlertView* dialog = [[UIAlertView alloc] initWithTitle:@"Enter Text \n" 
                message:@"\n\n Keep it short and sweet" 
                delegate:self 
              cancelButtonTitle:@"Cancel" 
              otherButtonTitles:@"OK", nil]; 

    nameField = [[UITextField alloc] initWithFrame:CGRectMake(20.0, 45.0, 245.0, 25.0)]; 
    [nameField setBackgroundColor:[UIColor whiteColor]]; 
    [dialog addSubview:nameField]; 
    [dialog show]; 
} 

enter image description here

+0

В будущем - http://stackoverflow.com/questions/6319417/whats-a-simple-way-to-get-a-text-input-popup-dialog-box-on-an-iphone –

ответ

2

Используйте предоставленный API вместо этого хак. Вместо добавления собственного текстового поля (которое никогда не поддерживалось на самом деле) установите для окна предупреждения alertViewStyle значение UIAlertViewStylePlainTextInput. Это даст вам поле для ввода текста в режиме просмотра предупреждений.

+2

К выполните этот ответ: хак не работает, потому что iOS 7 делает * не * поддерживает добавление subviews в UIAlertView. Но iOS 6 сделал. –

+0

'UIAlertView' никогда не поддерживал subviews. Это просто работает в более ранних версиях iOS. Есть разница. – rmaddy

+1

UIAlertView наследует UIView. UIView поддерживает addSubview :. Таким образом, UIAlertView поддерживает addSubview: пока это не мешает вам использовать его. Конечно, он официально не поддерживался (что подтверждается Apple), но оно было поддержано. –

Смежные вопросы