Мои контролеры модального представления показываются позади моего UIActionSheet, и мой UIActionSheet не увольняется.Я использую:
[self presentModalViewController:composeTweetView animated:YES];
Для представления моего модального контроллера вида.
Мой лист действий отображается на вкладке:
[actionSheet showFromTabBar:self.parentViewController.tabBarController.tabBar];
Этот код работал на iOS 4.0.
if (buttonIndex == 0) {
if (self.isLoggedIn) {
[FlurryAPI logEvent:@"ST_REPLY_CLICKED"];
composeTweetView.isDirectMessage = FALSE;
[self presentModalViewController:composeTweetView animated:YES];
[composeTweetView release];
}
else {
LoginViewController* loginView = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
loginView.delegate = self;
loginView.isPostingComment = TRUE;
self.isReply = TRUE;
[self presentModalViewController:loginView animated:YES];
[loginView release];
[composeTweetView release];
}
}
Сводка:
У меня есть UIViewController, который содержит UITabBar.Я представляю UIActionSheet, который имеет несколько кнопок, которые представляют модальный контроллер представления.Когда представлен контроллер модального представления, UIActionSheet должен сам себя закрыть, а модальное представление должно быть на вершине стека.Проблема в том, что UIActionSheet не закрывается, и за ним загружается модальное представление.Эта проблема не возникала до тех пор, пока iOS 4.2.1
Действия для воспроизведения:
- Создание проекта TabBar, установка базового SDK для iOS 4.2.1
- Создание кнопки или триггера для отображения UIActionSheet
- Разрешить одной из кнопок в UIActionSheet представлять модальный контроллер представления с использованием синтаксиса:
[actionSheet showFromTabBar:self.parentViewController.tabBarController.tabBar];
Ожидаемые результаты:
1. The UIActionSheet should dismiss itself, and the modal view should appear in front
Фактические результаты:
1. The UIActionSheet does not get dismissed and the modal view appears behind it.
Регрессия:
This problem was not apparent prior to iOS 4.2.1
Примечания: Я пробовал другие способы отображения таблицы UIActionSheet, все из которых не работают должным образом:
//[actionSheet showInView:self.parentViewController.tabBarController.tabBar];
//[actionSheet showInView:[self.view window]];
//[actionSheet showInView:self.parentViewController.tabBarController.view];
//[actionSheet showInView:[UIApplication sharedApplication].keyWindow];