Я пытаюсь управлять развернутым списком данных. У меня есть объект Contact, который имеет отношение «многие» к другому объекту «Правило». В моем контроллере корневого представления я использую выбранный контроллер результатов для управления и отображения списка контактов. Когда контакт используется, я нажимаю новый контроллер представления в стек со списком правил контакта.Как выбрать дочерние объекты в подвью?
Я не мог понять, как использовать второй контроллер надуманные результатов для отображения правил, поэтому я использую следующее:
// create a set of the contact's rules
rules = [NSMutableSet set];
rules = [self.contact mutableSetValueForKey:@"rule"];
// create an array of rules from the set
arrayOfRules = [NSMutableArray arrayWithCapacity:[rules count]];
for (id oneObject in rules)
[arrayOfRules addObject:oneObject];
// sort the array of rules
NSSortDescriptor *descriptor = [[NSSortDescriptor alloc] initWithKey:@"phoneLabel" ascending:YES];
[arrayOfRules sortUsingDescriptors:[NSArray arrayWithObject:descriptor]];
[descriptor release];
создать набор правил, а затем использовать это для создания массива правил для сортировки. Затем я использую эти две коллекции, чтобы заполнить сгруппированное представление таблицы. Все это работает правильно.
Вот моя проблема: Есть несколько различных действий, которые пользователь может принять в этом представлении, и большинство из них требуют, чтобы я знал, какое правило было использовано. Но я не могу понять, как это получить. Например, скажем, пользователь хочет удалить правило. Мне кажется, правильный подход что-то вроде ...
[rules removeObject:ruleObjectToBeRemoved]
... но я не могу понять, как specifiy ruleObjectToBeRemoved. Надеюсь, все это имеет смысл.
Как обычно, заранее за консультацию, которую вы можете предложить.