Как мне подтолкнуть контроллер представления в одном случае, но представить его модально в другом? - PullRequest
0 голосов
/ 07 октября 2019

У меня есть контроллер вида (VC3), который я хочу нажать при доступе через один экран (VC1), но представить его модально при доступе с другого экрана (VC2),Контроллер представления назначения (VC3) находится на собственной раскадровке и встроен в UINavigationController (что, я считаю, очень важно здесь).

В prepare(for segue) на VC1 У меня есть это:

 if let nav = segue.destination as? UINavigationController {
     let destinationViewController = nav.topViewController as! LiftsViewController
     destinationViewController.delegate = self
   }

Здесь представлен модальный контроллер представления (VC3), что мне и нужно.

Из VC2 к контроллеру представления (VC3) можно будет получить доступ, нажав на ячейку в табличном представлении, так чтоЯ хочу это толкнул . Но в prepare(for segue) на VC2 у меня тот же код, что и выше, потому что, ну, я перехожу к тому же контроллеру представления, который есть в UINavigationController.

Я смотрел довольно много потоковэтот адрес нажимает vcs или представляет их модально, но не может найти ничего, что отвечает, как сделать то же самое с vc.

Спасибо.

1 Ответ

0 голосов
/ 08 октября 2019

В этом сценарии давайте не будем использовать сегментацию и пуш / презентацию вашего венчурного капитала программно.

let vc3 = (UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "LiftsViewController") as? LiftsViewController)!
vc3.delegate = self

теперь пуш:

self.navigationController?.pushViewController(vc3, animated: true)

или подарок:

self.presentViewController(vc3, animated: true, completion: nil)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...