В моем приложении у меня есть ECSlidingViewController
, объявленный как исходный корневой контроллер через Storyboard
. В моем didFinishLaunchingWithOptions
методе AppDelegate, я его экземпляр, как описано выше:Настоящий контроллер модального просмотра от ECSlidingViewController
self.slidingController = [[UIStoryboard storyboardWithName:@"AppStoryboard" bundle:[NSBundle mainBundle]] instantiateViewControllerWithIdentifier:@"ECSlidingViewController"];
То, что я хочу, чтобы иметь возможность показать контроллер представления глобальной модальный (например, когда толчок уведомление приходит, когда приложение активно.), Не зная, В настоящее время контроллер находится в верхней части контроллера скольжения.
Что я делаю (в моем AppDelegate):
[self.slidingController.topViewController presentModalViewController:controller animated:YES];
, но это не похоже на работу.
Есть ли способ представить модальный контроллер с моего контроллера скольжения независимо от того, какой контроллер является topViewController?
PS. Если нет, есть ли вероятность, что то, что я хочу, будет работать с SWRevealViewController
вместо ECSlidingViewController
? Если это стоит того, я перейду на мучительную дорогу.
Спасибо заранее!
try '[self.slidingController presentModalViewController: контроллер анимированный: YES];' без '.topViewController' – alexcristea
Я уже пробовал это. Это дает мне «Предупреждение: попытка представить в , чей вид не находится в иерархии окон!" –
ozzotto
Установите ECSlidingViewController как rootViewControlller 'self.rootViewController = [[UIStoryboard storyboardWithName: @" AppStoryboard "bundle: [NSBundle mainBundle]] instantiateViewControllerWithIdentifier: @" ECSlidingViewController "];' – alexcristea