@dadduUrsa
Вернувшийся кодер недоучка

Как обновить view с переданными данными?

Имеется tabBar с двумя вкладками. На первой вкладке view со списком пользователей. При нажатии на пользователя открывается вторая вкладка с view на котором карточка пользователя. Я передаю в тот контроллер user'а и делаю profileView.viewDidLoad(). Далее уже отслеживаю поведение и вот что получается:

Readу to send ----- User ID: 7
viewDidLoad ----- User ID: 7
viewDidLoad ----- User ID: 7
viewDidLoad ----- User ID: 1
viewWillAppear ----- User ID: 1


Почему viewDidLoad вызывает трижды и почему меняется ID пользователя на значение по умолчанию? Если этот метод не подходит, то какой использовать для обновления view?

На первой вкладке табБара есть вью со списком пользователей. На второй вкладке вью с профилем пользователя + на ней коллекшнвью с фотками. При нажатии на имя пользователя срабатывает UITapGestureRecognizer и отрывает вторую вкладку с профилем. И вот в профиле уже должны быть данные с кликнутым пользователем. И соответственно должен обновиться коллекшнвью.
  • Вопрос задан
  • 694 просмотра
Пригласить эксперта
Ответы на вопрос 2
ivanvorobei
@ivanvorobei
iOS разработчик, канал https://t.me/sparrowcode
Вам не нужно использовать viewDidLoad для обновления вообще. Это метод жизненного цикла.

Опишите какую вью хотите обновить - таблицу, просто вью, бар? По какому ивент - что триггер? Напишите это в вопросе, после дополню ответ.

UPD:
У вас по нажатию на первом таббаре открывается второй?) Так не делается. Видимо вы совсем начинающих... Изучите гидлайны по проектированию интерфейсов. Там буквально 10 страниц с картинками, отдельно есть про TabBar. У меня есть видео про иконки таб-бара.

Чтобы обновить коллекцию, нужно использовать reloadData, performBatch или apply в зависимости как вы установили dataSource. Вы начинающий, скорее всего через reloadData все будет работать.

Чтобы обновить просто вью - используйте тригеры. Делегаты, нотификации. По ивенту устанавливать текст/картинку.
Ответ написан
@dadduUrsa Автор вопроса
Вернувшийся кодер недоучка
Иван, вы правы, я только обучаюсь. И вот в задании сказано, что при нажатии на пользователя в одной вкладке открывалась вторая вкладка в которой профиль пользователя. Но это все в одном таббаре. Поэтому не вижу другого решения как обновлять вьюху
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы