У меня есть подкласс класса NSManagedObject, который используется с Core Data в iPhone. Однако у меня есть временное «поле» (ivar), которое я хочу добавить в этот класс (но я не хочу его хранить в хранилище данных). Пытался использовать неофициальный и формальный протокол, но оба они дают мне «статическую переменную», как поведение. (Он ведет себя как переменная класса, а не переменная экземпляра). Любое предложение?Добавление ivar в подкласс NSManagedObject
Моя первая попытка, созданный тест «пустышки-класс», который, предположительно, подкласс NSManagedObject, то я создал тест-категорию
@interface Test (custom)
NSString *_string ;
- (void)setString:(NSString *)newString;
- (NSString *)string;
@end
Это обычный и присваивателя. Это путь я использую Test класса
Test *a = [[Test alloc] init];
Test *b = [[Test alloc] init];
[a setString:@"Test1"];
NSLog(@"%@", [a string]); //This will print out Test1
[b setString:@"Test2"];
NSLog(@"%@", [b string]); //This will print out Test2
NSLog(@"%@", [a string]); //Unfortunately, this will also print out Test2
Я мог бы также связываться с подклассом NSManagedObject (который является моим Entity) непосредственно, но я не думаю, что это способ сделать это.
приветствуем ваши усилия по правильному отображению блоков кодов; но есть более простой способ: сначала вставьте пустую строку, а затем просто отложите каждую строку кода на четыре или более пробелов! – Yuji 2010-11-28 13:58:38
Спасибо за советы – Rpranata 2010-11-28 20:09:54