Изменить tableView при изменении критериев атрибута CoreData - PullRequest
0 голосов
/ 17 февраля 2011

Ищу опытного совета, так как я новичок в iOS.У меня есть сущности CoreData для "доходов" и "расходов".У меня есть TableView, чтобы показать расходы и еще один, чтобы показать доход.Я хотел бы сгруппировать расходы или доходы по месяцам и отобразить данные (расходы или доходы) в табличном представлении, а также изменить месяц, отображаемый с помощью кнопок панели инструментов.Показывать по месяцам кажется простым, используя атрибут «месяц» для сущностей.Мой вопрос заключается в том, каков самый чистый способ реализации «ежемесячного отображения» и адаптации tableView для реагирования на кнопки «следующий месяц» и «предыдущий месяц»?Например, у меня есть tableView, показывающий расходы за февраль.Когда я касаюсь следующей кнопки, я хочу показать таблицу с мартовскими расходами.Какой подход вы предлагаете использовать "месяцы"?Это может быть довольно просто, но для кого-то, кто начинает, может быть довольно сложно, если я приму неправильные указания.Заранее спасибо

1 Ответ

0 голосов
/ 18 февраля 2011

Подход, который я бы использовал, состоял бы в том, чтобы иметь перечисление typedef для месяца (просто для удобства)месяц, с которым связан объект.Затем вы можете получить все сущности, связанные с указанным месяцем, например так:

NSFetchRequest *request= [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:@"<<Your entity name here>>" inManagedObjectContext:managedObjectContext]];
NSPredicate *monthPredicate = [NSPredicate predicateWithFormat:@"month.integerValue == %d", (NSInteger)month];
[request setPredicate:monthPredicate];

этот запрос должен получить все сущности, связанные с данным месяцем.Если вы хотите, вы также можете просто сохранить месяц в виде строки.Надеюсь, это поможет!

...