У меня проблемы с прорезями с coredata, но я чувствую, что это сильно раскроет мне ситуацию, если кто-нибудь сможет объяснить мне некоторые простые случаи.Как хранить CGRect и другие вещи в основных данных
Я хочу поставить свою модель в coredata, и в самом простом случае воспользуйтесь отменой/повторением. Дело в том, что все примеры, которые я вижу, имеют тенденцию хранить либо строки, либо целые числа. Что делать, если у меня есть класс, как следует, что я хотел бы реализовать в основных данных (а составленный пример):
@interface Badge : NSObject {
NSString *textForBadge;
int badgeValue;
UIColor *color;
CGRect rect;
NSMutableArray *awards; // this would be a list of 'Category' - another custom class
}
Они все сделали на месте, но каждый выделить путаницу
Как я вижу, я открою .xcdatamodel и добавлю новый привязанный «Значок», который будет NSManagedObject
. Затем я добавляю свойство для textForBadge
типа String
. Все идет нормально. Я делаю что-то похожее для badgeValue, но затем перехожу к UIColor
и CGRect
, и я немного тупик, поскольку для них нет собственности. Я должен создать объект для представления каждого (например, объект Rect
, который имеет четыре свойства x,y,w,h
), которые являются ints? Затем каждый раз заполняйте CGRect этими ints? То же для UIColor?
И, наконец, я прихожу в список awards
. Если это список указателей на ряд объектов, представляющих награду, они могут содержать изображение, цвет, текст и т. Д. Я предполагаю, что award
снова будет сущностью, которую я должен создать, а не Badge
, хранящей массив, который у меня был бы от 1 до многих отношений от него до класса Award
.
Имею ли я право на это или собираюсь конкурировать в противоположном направлении? Все примеры, которые я вижу, работают с ванильными объектами, такими как String или int, поэтому я хочу, чтобы у меня было это прямо в голове, прежде чем реализовать кучу вещей.
С наилучшими пожеланиями,
Брин
Ссылка, на которую вы ссылаетесь, мертва. @AndrewMadsen –