Zamiana widoków potomnych w widoku kontenera

PozwolićContainerView być widokiem kontenera nadrzędnego z dwoma widokami treści podrzędnej:NavigationView iContentView.

Chciałbym móc wymienić kontrolerContentView z innym widokiem. Na przykład zamiana kontrolera strony głównej na kontroler strony z wiadomościami. Obecnie jedyny sposób, w jaki mogę to zrobić, to użycie pełnomocnika do przekazania informacjiContainerView że chcę zmienić widoki. To wydaje się być niechlujnym sposobem na zrobienie tego, ponieważContainerViewController skończyło się na tym, że miałbym grupę specjalnych delegatów na wszystkie podsumowanie.

To również musi komunikować się zNavigationView który ma informacje o tym, który widok jest obecnie wContentView. Na przykład: jeśli użytkownik znajduje się na stronie z wiadomościami, pasek nawigacji w widoku nawigacji pokaże, że przycisk wiadomości jest aktualnie wybrany.

Pytanie A: Czy istnieje sposób na zamianę kontroleraContentView bez metody delegowania wywołującejContainerView samo? Chciałbym to zrobić programowo (bez storyboardu).

Pytanie B: Jak mogę zamienić kontrolery wContentView zNavigationView bez wezwania delegowanego? Chciałbym to zrobić programowo (bez storyboardu).

questionAnswers(3)

yourAnswerToTheQuestion