обновить табличное представление с данными в массиве? - PullRequest
0 голосов
/ 11 апреля 2011

Я создаю Ipad с двумя контроллерами представления. Один контроллер представления - FirstViewController, а другой - SecondViewController. В FirstViewController я заполняю массив числами. Теперь в моем SecondViewCOntroller у меня есть табличное представление. Я хочу поместить массив, который я создал в FirstViewController, в мое SecondViewController табличное представление? Как мне это сделать? Пожалуйста, помогите мне!

Ответы [ 3 ]

1 голос
/ 11 апреля 2011

Этот подход ломает MVC.Вы не можете иметь массив данных в качестве переменной экземпляра в вашем FirstViewController.Вы должны будете хранить данные в каком-то другом классе (часть M MVC).Вы заполняете эту часть M из FirstViewController (часть V), а затем получаете доступ к этой заполненной части M из SecondViewController.Таким образом, вы не будете зависеть от того, как эти два контроллера связаны друг с другом (родитель / потомок, братья и сестры или любая другая иерархия, о которой вы можете подумать).

Самый простой подход, который я могу придумать, - это сохранение сериализованногомассив в файле plist.Сохранение файла в первом и доступ к нему во втором контроллере представления.

1 голос
/ 12 октября 2012

Самый простой подход - создать свойство в SecondViewController.h, например:

@property (nonatomic, retain) NSMutableArray *yourArray;

и в SecondViewController.m, поставить:

@synthesize yourArray;

создали свойство на SecondViewController.Теперь, когда вы собираетесь открыть Second View Controller, просто создайте его экземпляр и сделайте что-то вроде следующего:

secondViewController.yourArray = array;
[self.navigationController pushViewController:secondViewController];
1 голос
/ 11 апреля 2011

Вам нужно сослаться на объект NSArray в SecondViewController, вы можете сделать это с помощью делегата. Делегат - это переменная экземпляра, которая содержит указатель на делегат, в данном случае FirstviewController. Затем в FirstViewController вы добавляете свойство для NSArray, если это переменная экземпляра, и вызываете делегат.someArrayName в secondviewController

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