Передача значений из UITableView в UIView в заголовке таблицы - PullRequest
0 голосов
/ 28 июля 2011

Моя модель CoreData управляет серией контроллеров UITableView.

Одна из таблиц подробностей имеет заголовок, который содержит UIView «GraphView», в котором используются данные из строк таблицы. (Это похоже на то, что в iTunes есть собственный заголовок для отображения длины песни в данном списке воспроизведения.) Мой «список воспроизведения» правильно заполняется из CoreData. Но как мне передать данные из TableView в UIView в его заголовке?

Кажется бесполезным и избыточным извлекать и анализировать его снова, особенно когда данные находятся в удобном изменяемом массиве, называемом «шаги». Могу ли я просто передать изменяемый массив UIView в заголовке? Если так, то как?

Я попытался создать свойство NSArray в классе UIView с именем «sentStepsArray», а затем установить его из StepDetailViewController следующим образом:

        graphView.passedStepsArray = [[NSArray alloc] initWithArray:steps copyItems:YES];

Но вернемся к классу GraphView, он остается NULL. Значение не передается.

Есть идеи?

1 Ответ

0 голосов
/ 28 июля 2011

Из моей визуализации проблемы кажется, что вы на правильном пути, имея свойство NSArray в GraphView.Возможно, вам не нужно копировать существующий массив с помощью метода initWithArray:copyItems:, просто передайте неизменяемую копию массива заполненных шагов:

graphView.passedStepsArray = [[steps copy] autorelease];

Это предполагает, что свойство graphView passedStepsArrayсобирается сохранить.(Тогда не забудьте установить self.passedStepsArray = nil; в методе graphView dealloc.)

...