Каков наилучший способ создания UITableView, в котором перечислены NSManagedObjects, сгруппированные в разделы, определяемые месяцем атрибута NSDate? - PullRequest
0 голосов
/ 05 октября 2011

Я несколько часов пытался достичь того, что казалось простым делом.

У меня есть объект A с атрибутом NSDate.

Моя цель - создать UITableView, которыйперечисляет каждый объект A, группируя их в секции, определенные MM / YYYY их атрибута NSDate.

Я нашел этот официальный пример Apple: http://developer.apple.com/library/ios/#samplecode/DateSectionTitles/Introduction/Intro.html

Итак:

  • Я создал новый необязательный атрибут Transient «sectionTitleMonth» для своей сущности A
  • Я определил новые динамические свойства (primitiveDate и primitiveSectionTitleMonth) и реализовал их установщики и keyPathsForValuesAffectingSectionTitleMonth, как в официальном примере.
  • он строил NSFetchedResultsController точно так же, как в примере.Теперь он использует мой переходный атрибут в качестве sectionNameKeyPath
  • , он определяет методы, относящиеся к разделу, как в официальном примере

2 балла заставляют меня задуматься, хорошо ли это решение:

1) Я использую переходные атрибуты в качестве sectionNameKeyPath с серверной частью SQL Lite.Это нормально ?Я где-то читал, что временные атрибуты + SQLLite не были хорошими друзьями, но не могу вспомнить, в каких случаях

2) Я определяю свойства (primitiveDate и primitiveSectionTitleMonth) в моей категории класса A + nonGenerated.Это нормально ?Потому что, как указано в официальном документе, «вы не можете использовать категорию для добавления дополнительных переменных экземпляра в класс».Но здесь свойства являются динамическими, и я предполагаю, что данные ядра генерируют связанные переменные экземпляра, когда он генерирует A, поэтому он должен работать нормально ... но у меня все еще есть небольшие сомнения:)

Кажется, все работает нормально, но... это хорошее решение?Я имею в виду, есть ли какой-нибудь более простой / лучший способ достижения моей цели?

Пожалуйста, успокойте меня или дайте мне лучшее решение: о)

1 Ответ

0 голосов
/ 06 октября 2011

Ваш подход кажется нормальным. Нет никакой очевидной разницы между наличием ваших методов доступа в файле класса категории или в оригинале. Вы не нарушаете предупреждение в документах, потому что фактически не добавляете переменные экземпляра в класс модели.

...