3

このコードは正しくない 0 個のオブジェクトを返します。ただし、述語を削除すると、フェッチ要求はすべてのオブジェクトを返します。

NSError *error = nil;

NSEntityDescription *entityDescription = [NSEntityDescription                                              entityForName:@"Person"  inManagedObjectContext:[self managedObjectContext]];

NSPredicate * pr = [NSPredicate predicateWithFormat:@"%K beginswith '%@' ",
                    @"FullName", searchText];

//NSPredicate * pr = [NSPredicate predicateWithFormat:@"PersonID == %@", searchText]; Works fine


NSFetchRequest *request = [[[NSFetchRequest alloc] init] autorelease];
[request setEntity:entityDescription];
 [request setPredicate:pr];
NSArray * arr = [[self managedObjectContext] executeFetchRequest:request error:&error];

FullName 属性には、Unicode データ (アラビア語) が含まれています。

どんな助けでも大歓迎です。

4

1 に答える 1

7

試す:

NSPredicate * pr = [NSPredicate predicateWithFormat:@"FullName beginswith %@", searchText];
于 2011-02-09T18:29:59.907 に答える