0

Что такое различие между:presentModalViewController: Различия

[self.navigationController presentModalViewController:nav animated:YES]; 

и

[self presentModalViewController:nav animated:YES]; 

Где самость подкласс UIViewController.

Наряду с этим имеет значение, как я отклоняю модальный вид? Пример:

[self dismissModalViewControllerAnimated:YES]; 

или

[self.navigationController dismissModalViewControllerAnimated:YES]; 

Если modalView представлен self.navigationController, он будет уволен, если призвал self, и наоборот?

Я знаю, что Apple рекомендует использовать протокол и делегировать в реальной реализации, но я просто пытаюсь выяснить, является ли поведение «под капотом» одинаковым или нет.

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

Благодаря

ответ

1

, какой класс ты называешь это от (то есть, что self). если вы вы называете его из контроллера представления, то разница в том, что ваш контроллер зрения предъявлением modalviewcontroller вместо контроллера представления navigationcontroller представления вида модального

если вы используете self.navigationcontroller вы можете взаимодействовать с self.navigationitem которым видом контроллера Безразлично Не знаю.

EDIT:

Да, это дает вам возможность выдвинуть дополнительные ViewControllers на self.navigationController.ViewControllers массив, а затем использовать navigationBar, чтобы перейти от ViewController к ViewController.

В качестве примера вы можете сделать [self.navigationController presentModalViewController:nav animated:YES];, а затем, если пользователь нажмет кнопку, вы можете нажать ViewController [self.navigationController pushViewController:vc animated:YES];. Тогда новый View Controller/View будет представлен внутри ModalView. Когда вы отклоните ModalViewController, вы все равно будете отправлены обратно в исходный контроллер представления.

Чтобы ответить на второй вопрос: вы должны отклонить модальный вид так же, как вы его представили. Поэтому, если вы используете self.navigationController для представления, используйте self.navigationController для отклонения.

+0

Так же взаимодействует с self.navigationItem дайте мне что-то, что представляет его без этого? – sasquatch

+0

см. Редактирование. –

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