Xcode: раскадровка и сохранение данных в каждом контроллере - PullRequest
5 голосов
/ 19 января 2012

Как вы можете догадаться, я новый программист, и у меня проблемы с получением простой вещи! Я делаю приложение с несколькими контроллерами представления. Каждый контроллер имеет текстовые поля и элементы UIsegmentedControl. Когда я переезжаю с одного контроллера представления на другой (модальное умение, если это имеет значение), содержимое предыдущего (записи текстового поля и опция сегментированного управления) сбрасывается в исходное состояние. Как я могу заставить их сохранить свое прежнее состояние? Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 02 сентября 2012
-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
    bViewController *deneme = [segue destinationViewController];
    [deneme setPassedValue:label.text];
}

Этот кусок кода решит вашу проблему, я надеюсь. Это сохраняет ярлык того, что находится внутри него. И вам нужно добавить еще немного кода в другие классы.

Если этот код поможет вам сказать мне, и я могу дать вам весь код.

0 голосов
/ 19 января 2012

Вы также можете использовать навигационный контроллер для перехода от одного вида к другому. Таким образом, вы поместите ваш новый вид поверх предыдущего, а когда вы вернетесь назад, предыдущий вид сохранит свое состояние. см. это руководство для получения дополнительной информации о раскадровке и UINavigationController: http://www.raywenderlich.com/5138/beginning-storyboards-in-ios-5-part-1

0 голосов
/ 19 января 2012

Для сохранения состояния приложения вы можете использовать класс модели, следуя рекомендуемой парадигме MVC (модель-представление-контроллер). Более подробная информация здесь: Сохранить состояние просмотра после перезагрузки

В качестве альтернативы вы можете использовать событие viewWillDisappear:, чтобы сохранить состояние просмотра, а затем восстановить его в событии viewWillAppear:.

Событие viewWillDisappear: вызывается непосредственно перед исчезновением представления, а viewWillAppear: запускается до того, как представление помещается на передний план, что идеально для внесения любых изменений в пользовательский интерфейс.

Эти события, возможно, уже были объявлены для вас в вашем контроллере представления, но в случае, если они не проверяют прототипы здесь: http://developer.apple.com/library/ios/#documentation/uikit/reference/UIViewController_Class/Reference/Reference.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...