0

PHPスクリプトからiOSにダウンロードしてコアデータに保存したMySQL行がたくさんあります。今、私はコアデータに比較的慣れていません。core-data からこれらの行の 1 つを取得して表示するにはどうすればよいですか? それがあまりにも漠然としている場合、ここに私の状況があります: ユーザーが iOS の特定のボタンをクリックすると、より大きなリストからユーザーの場所に一致した都市の名前など、ユーザーに基づいて特定の結果を表示したいと思います。都市名の。ただし、1行だけ必要です。チュートリアルであろうと特定の提案であろうと、プロセスとヘルプを理解したいと思っているだけです。

4

1 に答える 1

1

オブジェクトを操作するための基本は次のとおりです。

// Utility method to fetch objects
    - (NSArray *)fetchEntity:(NSString *)entityName  withPredicate:(NSPredicate *)predicate inContext:(NSManagedObjectContext *)moc
    {
        NSFetchRequest* request = [[NSFetchRequest alloc] init];    
        NSEntityDescription* entity = [NSEntityDescription entityForName:entityName inManagedObjectContext:moc];
        [request setEntity:entity];
        [request setPredicate:predicate];

        return  [moc executeFetchRequest:request error:nil];
    }

次のように使用して名前を取得できます。

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name == %@",@"My product"]; // act as a filter
NSManagedObject *product = [[CoreDataUtils fetchEntity:@"Product" withPredicate:predicate inContext:self.moc] objectAtIndex:0];
NSLog(@"%@",[product objectForKey:@"name"]);

または、次のように名前を設定できます。

[product setValue:@"New Product" forKey:@"name"];

オブジェクトを編集するときは、NSManagedObjectContext を忘れずに保存してください

[self managedObjectContext save:nil];

ここに素晴らしいチュートリアルがあります: Core Data on iOS 5 チュートリアル: はじめに

于 2012-10-15T06:32:51.663 に答える