1

Мне интересно узнать, можно ли отобразить uiviewcontroller за кадром, чтобы контроллер просмотра поверил ему на экране, в то время как пользователю ничего не отображается.Могу ли я представить UIViewController модально за кадром?

Я попытался вручную вызвать, viewDidLoad, loadViews ... в том же порядке, что яблоко вызывает эти методы, но оно не получилось хорошо.

идеи?!

+0

Другой вариант - создать новый 'UIWindow' и установить VC как' rootViewController'. Но я чувствую, что должен спросить ... почему вы хотите представить VC вне экрана? Если он не требует ввода пользователем, чтобы делать все, что вам нужно, это говорит о том, что 'UIViewController' является неправильным классом. – pbasdf

+0

@pbasdf Я не могу создать ViewController, потому что его один из контроллеров представления Apple (например, контроллер просмотра электронной почты), и мне нужна его функциональность, а не ее интерфейс :) –

+0

Что вы пытаетесь достичь с этим? –

ответ

0

Создайте пользовательский сегмент и установите рамку контроллера назначения за пределы экрана. Я даже не думаю, что вам нужно сделать анимированный пользовательский segue, так как контроллер все время выключен.

Я думаю, что будет проблема, хотя контроллер представления источника все еще находится на экране и принимает жесты.

Поскольку контроллер вида выключен, есть причина, по которой вам нужно, чтобы он был uiviewcontroller?

+0

проблема заключается в том, что я не могу создать экземпляр контроллера представления назначения через раскадровку, ее один из ViewControllers Apple, такой как контроллеры представления документов. –

0

Я считаю, что вы хотите создать (или подделать) отношения parent-viewController/child-viewController. На самом деле вы не должны называть эти методы напрямую, как вы можете видеть в Apple's docs on beginAppearanceTransition:animated:.

Если вы являетесь родителем viewController, вы несете ответственность за ручное управление представлениями своих детей. В вашем случае вы просто хотите убедить его, что он отображается (что я поддерживаю, потому что я люблю хакерские вещи, но вы должны быть осторожны с рендерингом вне экрана в целом), поэтому вы можете экспериментировать с ним, пока не найдете нужную сумму от лживых к своим детям.

+0

Я собираюсь проверить это сегодня, желаю удачи :) –

Смежные вопросы