1

我有 2 个要与 KVO 链接的实体,一个是单个 statTracker 类,用于跟踪不同的统计数据,另一个是一个包含成就信息的成就类。理想情况下,我想要做的是通过让成就类的实例观察 statTracker 类上的值来设置 KVO,并设置一个阈值,在该阈值处应该“触发”成就实例(在这种情况下触发意味着显示 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]

那里的任何人都知道我将如何设置它?有没有办法通过我没有看到的关系来做到这一点?

谢谢,

缺口

4

1 回答 1

0

NSManagedObjects 是 NSObjects,如果你用类支持它们,你可以添加任何你想要的方法。

也就是说,您可能希望创建一个成就管理器类来管理类之间的关系并执行任何触发响应。

于 2010-05-27T00:51:17.693 回答