iPhone OS: есть ли способ настроить KVO между двумя объектами ManagedObject? - PullRequest
1 голос
/ 27 мая 2010

У меня есть 2 объекта, которые я хочу связать с KVO, один класс statTracker, который отслеживает различные характеристики, а другой класс достижений, который содержит информацию о достижениях. В идеале я хочу настроить KVO, установив для экземпляра класса достижений значение в классе statTracker, а также установив пороговое значение, при котором экземпляр достижения должен быть «запущен» (в этом случае запуска будет означать показ UIAlertView и изменение свойства в классе достижений.)

Я бы также хотел установить эти отношения при создании класса достижений, если это возможно

так вроде как:

Achievement *achievement1 = (Achievement *)[NSEntityDescription insertNewObjectForEntityForName:@"Achievement" inManagedObjectContext:[[CoreDataSingleton  sharedCoreDataSingleton] managedObjectContext]];
    [achievement1 setAchievementName:@"2 time launcher"];
    [achievement1 setAchievementDescription:@"So you've decided to come back for more eh? Here are some achievement points to get you going"];
    [achievement1 setAchievementPoints:[NSNumber numberWithInt:300];
            [achievement1 setObjectToObserve:@"statTrackerInstace"
                           propertyToObserve:@"timesLaunched" 
                           valueOfPropertToSatisfyAchievement:2]

Кто-нибудь знает, как я это настрою? Есть ли способ, которым я мог бы сделать это через отношения, которых я не вижу?

Спасибо

Ник

1 Ответ

0 голосов
/ 27 мая 2010

NSManagedObjects являются NSObjects, если вы поддерживаете их классами, вы можете добавлять любые методы, которые вам нравятся.

Тем не менее, вы можете создать класс менеджера достижений, который управляет отношениями между классами и выполняет любые триггерные ответы.

...