मेरे ऐप में UISearchBar है जो उपयोगकर्ता को खोजशब्दों को दर्ज करने की इजाजत देता है। खोज कुंजी परिवर्तन में पाठ के रूप में परिणाम प्रदर्शित करने के लिए प्रत्येक कीस्ट्रोक एक कोर डेटा क्वेरी निष्पादित करता है।कोर डेटा प्रदर्शन में सुधार कैसे करें?
समस्या यह है कि खोज बार कीस्ट्रोक बहुत खराब हैं ... निश्चित रूप से धीमी गति से लाने की वजह से। किसी भी विचार प्रदर्शन को सुधारने के लिए कैसे?
मेरा कोर डेटा एसक्लाइट डेटा स्टोर के साथ समर्थित है जिसमें 1000 ऑब्जेक्ट्स हैं।
// searchKeyword is the string appears in UISearchBar
// Both title and author may contain several words so I can't use BEGINSWITH
NSPredicate* predicate = [NSPredicate predicateWithFormat:@"(author CONTAINS[c] %@) OR (title CONTAINS[c] %@)", searchKeyword, searchKeyword];
NSEntityDescription* entity = [NSEntityDescription entityForName:@"Book" inManagedObjectContext:managedObjectContext];
NSFetchRequest* request = [[NSFetchRequest alloc] init];
[request setEntity:entity];
[request setPredicate:predicate];
[request setFetchLimit:10];
NSSortDescriptor* sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"title" ascending:YES];
NSArray* sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[request setSortDescriptors:sortDescriptors];
[sortDescriptor release];
[sortDescriptors release];
execute request and fetch the results
fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:request
managedObjectContext:managedObjectContext
sectionNameKeyPath:nil
cacheName:nil];
NSError* error = nil;
BOOL success = [fetchedResultsController performFetch:&error];
[request release];
यह एक अच्छा समाधान है! धन्यवाद!! मैं उस सत्र की तलाश करूंगा और इसे यहां पोस्ट करूंगा यदि मुझे यह मिल जाएगा। – Joshua
डायरेक्ट लिंक: http://developer.apple.com/itunes/?destination=adc.apple.com.4092349126.04109539109.4144345613?i=2041584141 हम्म .. मैंने आपकी पोस्ट के लिए एक लंबा समय इंतजार किया। इस बीच मैंने इंटरनेट पर संघर्ष किया, यह मेरा आत्म पाया: डी यह है "डब्ल्यूडब्ल्यूडीसी 2010, आईफोन ओएस पर कोर डेटा प्रदर्शन अनुकूलित करना" 35:06 –
पर क्षमा करें मुझे संबंधित नमूना कोड नहीं मिला (और मैं एक पंजीकृत देव हूं) । क्या आप एक छोटा कोड फिसल सकते हैं? (सामान्यीकरण और चार वृद्धि) – obiwahn