1

KVO とリンクしたいエンティティが 2 つあります。1 つはさまざまな統計を追跡する単一の statTracker クラスで、もう 1 つは実績に関する情報を含む実績クラスです。理想的には、達成クラスのインスタンスに 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 に答える