Переменные в другом стеке навигации - PullRequest
0 голосов
/ 26 августа 2011

Извините, если мой вопрос не соответствует названию, но я думаю, что он соответствует: У меня есть приложение с контроллером навигации и 3 представления. Это приложение, где вы подключаетесь к серверу и общаетесь с друзьями. Дело в том, что мой rootViewController, экран входа в систему, вызывает второе представление - список друзей. щелкнув друга в списке, вы перейдете к третьему виду, самому экрану чата. Я хотел, чтобы, когда пользователь входит в систему (rootview), чтобы сохранить имя пользователя, используемое в переменной, чтобы я мог использовать его в третьем представлении, на экране чата, чтобы при отправке сообщения на нем могло быть указано его имя. и при получении информации с сервера я могу использовать его имя в качестве параметра тоже. Кстати, SQLite - лучший способ сохранить сообщения и пользователей? Я боюсь Core Data = /

Ответы [ 2 ]

0 голосов
/ 26 августа 2011

Чтобы держать вещи свободно связанными, я бы подумал просто передать userName при создании экземпляра каждого подкласса UIViewController. (Также облегчает юнит-тестирование)

, например

 // LoginViewController -> user logs in
 FriendsViewController *friendsViewController = [[FriendsViewController alloc] initWithUserName:userName];
 [self.navigationController pushViewController:friendsViewController];
 [friendsViewController release]; friendsViewController = nil;

 // FriendsViewController -> user selects a friend
 ChatViewController *chatViewController = [[ChatViewController alloc] initWithUserName:userName];
 [self.navigationController pushViewController:chatViewController];
 [chatViewController release]; chatViewController = nil;

Не бойтесь основных данных. Существует множество отличных книг.

0 голосов
/ 26 августа 2011

Основные данные не так уж и плохи. Это - руководство, которое я использовал, чтобы начать работу с Core Data.Как только вы обернетесь вокруг того, как все работает, это действительно не так уж и плохо.

Если вы хотите, чтобы мог использовать SQLite, но это много кода.Базовые данные намного проще в использовании.

...