Обновление NSMutableArray в новом viewController, который помещается в стек - PullRequest
0 голосов
/ 24 марта 2012

Я новичок в программировании и некоторых концепциях ООП и не уверен, что это «правильный» способ что-то сделать. В основном у меня есть NSMutableArray в моем mainViewController.

MainViewController: UITableViewController 

@property (nonatomic, retain) NSMutableArray *data;

Можно нажать кнопку «плюс», чтобы добавить элемент в таблицу, или, если выбрана уже существующая строка, текущий элемент можно редактировать. Я не уверен, что лучший способ структурировать мой DetailViewController, так как DetailViewController может быть представлен либо кнопкой плюс, либо выбором строки таблицы. Должен ли я установить флаг в DetailViewController, который говорит, какой метод представил DetailViewController, поэтому в моем методе Save я либо вставляю объект (если пользователь нажал плюс), либо заменяю объект по текущему индексу (если пользователь выбрал строку и я передал индекс в DetailViewController)? Это кажется неуклюжим, когда я так поступаю, и мне было интересно, что может быть лучше, чем сделать что-то простое. Спасибо!

1 Ответ

0 голосов
/ 24 марта 2012

Ваша текущая MainViewController установка в порядке. Что вы хотите сделать для своего DetailViewController, так это определить его собственный вид. Учитывая описание вашего приложения, было бы лучше, если бы вы сохранили каждую строку в вашей таблице как объект:

MainViewController: UITableViewController

@property (nonatomic, retain) NSMutableArray * data ; // an entry for each row

DetailViewController: UIViewController

@property (nonatomic, retain) SomeObject * object; // Represents a single row

При представлении вашего DetailViewController либо:

  1. Заполните его управляемый объект существующей строкой, если пользователь выбирает существующий элемент
  2. Заполните его новым управляемым объектом, который будет добавлен в мастер-список после детального редактирования

Когда ваш контроллер подробного представления готов, вы обновляете представление таблицы.

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