2014-09-21 3 views
0

Я хочу использовать этот метод для извлечения случайной сущности основных данных:IOS: Генерация случайного объект ID

randomQuote = [managedObjectContext objectWithID:randomID]; 

Но я не знаю, как установить случайный идентификатор, который является экземпляром NSManagedObjectID , Может ли кто-нибудь мне помочь?

+0

возможный дубликат http://stackoverflow.com/questions/10656106/core-data -optimize-fetch-request – rdelmar

ответ

0

Используйте это:

NSFetchRequest *myRequest = [[NSFetchRequest alloc] init]; 
[myRequest setEntity: [NSEntityDescription entityForName:myEntityName inManagedObjectContext: managedObjectContext]]; 
NSError *error = nil; 
NSUInteger myEntityCount = [managedObjectContext countForFetchRequest:myRequest error:&error];  

NSUInteger offset = myEntityCount - (arc4random() % myEntityCount); 
[myRequest setFetchOffset:offset]; 
[myRequest setFetchLimit:1]; 

NSArray* objects = [managedObjectContext executeFetchRequest error:&error];  
id randomQuote = [objects objectAtIndex:0]; 
+0

Спасибо! Один шаг вперед, я хочу получить функцию под названием «Цитата дня». Значение кавычки выбирается случайным образом каждый день, вместо того, чтобы каждый раз открывать приложение. Любые предложения по этому поводу? – Conger

1

Существует способ создания UUID:

NSString *uuid = [[NSUUID UUID] UUIDString]; 
Смежные вопросы