Я делаю приложение Какао с пользовательскими интерфейсами. До сих пор я реализовал одну версию приложения, используя CALayer, выполняющий рендеринг, что было здорово, учитывая иерархическую структуру CALayers, и его функцию [hitTest:] для обработки событий мыши. В этой ранней версии моделью приложения являются мои пользовательские классы.
Однако, по мере роста программы, я чувствую потребность использовать Core Data для модели, не только для простоты управления связыванием / отменой операций, но и для того, чтобы попробовать новую технологию.
Мой метод до сих пор:
В базовых данных: создание блока сущности , с атрибутами xPos, yPos, шириной, высотой ... и т. Д.
Затем создаем класс BlockView: CALayer для рисования, который использует такие методы, как self.position.x = [self valueForKey: @ "xPos"] для извлечения значений от модели.
В этом случае каждый объект BlockView должен также хранить локальную копию xPos , что НЕ хорошо.
У кого-нибудь из вас есть лучшие предложения?
Edit:
Это приложение представляет собой инструмент визуализации информации. Поэтому позиции, размеры блоков важны и должны быть сохранены для последующего анализа.