Я работаю над приложением, которое имеет некоторые формы, содержащиеся в поповере. Моя проблема в том, что когда я нажимаю на любое поле ввода текста и появляется клавиатура, всплывающее окно сжимается в верхний левый угол экрана (0,0), и вы не видите поля, в которые вы вводите. Когда вы нажимаете кнопку «Скрыть клавиатуру», поповер возвращается к своему обычному размеру и положению.
Есть ли способ предотвратить изменение размера поповера при появлении клавиатуры?
Вот снимки экрана, если мое описание не подходит.

edit: Вот код для представления поповера на экране:
(void)displayPopoverForOrientation:(UIInterfaceOrientation)orientation {
if ([Utilities getAppDelegate].menuPopover) {
CGRect rect = CGRectMake(0, 0, 0, 0);
if (orientation == UIInterfaceOrientationLandscapeLeft ||
orientation == UIInterfaceOrientationLandscapeRight) {
if (self.currentPopover == RESERVATIONS_POPOVER) {
rect = CGRectMake(365, 0, 0, 0);
} else if (self.currentPopover == ACCOUNT_POPOVER) {
rect = CGRectMake(600, 0, 0, 0);
} else if (self.currentPopover == RESORTS_POPOVER) {
rect = CGRectMake(0, 0, 0, 0);
}
}
[[Utilities getAppDelegate].menuPopover presentPopoverFromRect:rect
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionUp
animated:YES];
}
}
Внутри поповера находится отдельный контроллер вида с настройкой макета в xib.
Не стесняйтесь задавать любые вопросы, я довольно новичок в iOS и Objective C, но я не новичок в кодировании, поэтому я сделаю все возможное, чтобы уточнить.
изменить 2:
Я обнаружил, что это происходит только в iOS 5. В более старых версиях iOS всплывающее окно просто сворачивается вертикально, пока не будет достаточно места для клавиатуры. Есть идеи о том, почему это поведение изменилось в iOS 5?