Как вы отклоняете UIActionSheet от приложения-делегата? - PullRequest
5 голосов
/ 12 июня 2011

Я пытаюсь удалить UIActionSheet от делегата приложения, чтобы он не отображался снова, когда вы возвращаетесь из фона.Я пытался удалить лист действий из методов viewDidUnload или viewDidDisappear в контроллере представления подкласса, но, кажется, не вызывается, когда фоны приложения.попытка использовать делегат приложения для отклонения либо UIActionSheet, которое может отображаться, когда фон приложения.Но я не могу понять, как позвонить.у кого-нибудь есть решение?Или лучшая идея сделать то же самое?

Спасибо.

Ответы [ 2 ]

4 голосов
/ 12 июня 2011

@ Дилан, вы можете объявить свойство для вашей переменной uiactionsheet и синтезировать его.

Затем в appdelegate в методе applicationDidBecomeActive вы можете закрыть эту таблицу действий, вызвав метод dismiss, выполнив что-то подобное [viewController.actionSheet dismissWithClickedButtonIndex:0 animated:NO]. Предполагая, что у вас есть ссылка в вашем appdelegate.

Но если нет, то вы можете найти все UIViews, показанные в верхней части uiwindow, а затем проверить, является ли какой-либо из uiviews своего рода классом, отображающим лист действий. После этого вы можете закрыть лист действий, выполнив то же самое, что написано выше, как только вы овладеете этим viewController, который показывает лист действий.

3 голосов
/ 12 июня 2011

попробуйте уволить в applicationDidBecomeActive метод appDelegate.

...