[ПРАВИТЬ] Хмм. Возможно, этот вопрос должен быть озаглавлен «Какое диалоговое представление по умолчанию для ввода данных пользователем вызывается в CocoaTouch?» Я понимаю, что могу создать целое представление именно то, что мне нужно, и обернуть его в контроллере представления и presentModalView - но я как бы надеялся, что появилось стандартное, обычное пользовательское представление «диалога», которое с какао-прикосновением. «Введите ваше имя», «введите текст для поиска» и т. Д., Это ОЧЕНЬ общие вещи!
Во всяком случае ... вот вопрос, как я его первоначально задавал:
Этот код:
UIAlertView* find = [[UIAlertView alloc] init];
[find setDelegate:self];
[find setTitle:@"Find"];
[find addButtonWithTitle:@"Cancel"];
[find addButtonWithTitle:@"Find & Bring"];
[find addButtonWithTitle:@"Find & Go"];
[find addButtonWithTitle:@"Go To Next"];
[find addSubview:_findText];
CGRect frm = find.frame;
int height = frm.size.height + _findText.frame.size.height + 100; // note how even 100 has no effect.
[find setFrame:CGRectMake(frm.origin.x, frm.origin.y, frm.size.width, height)];
[find setNeedsLayout];
[find show];
[find release];
Создает это предупреждение:
Найти оповещение http://www.publicplayground.com/IMGs/Misc/FindAlert.png
(я начал с кода из этого вопроса от emi1Faber , и он работает как рекламируется; однако, как я утверждаю в своем комментарии, кнопка отмены перекрывает текстовое поле.)
Как мне переставить все, чтобы текстовое поле соответствовало правильно? [findAlert setNeedsLayout], похоже, ничего не делает, даже после того, как я [findAlert setFrame: tallerFrame]. Советы?
Спасибо!