Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sqlite 避免使用NSSortDescriptor进行排序_Sqlite_Sorting_Nssortdescriptor - Fatal编程技术网

Sqlite 避免使用NSSortDescriptor进行排序

Sqlite 避免使用NSSortDescriptor进行排序,sqlite,sorting,nssortdescriptor,Sqlite,Sorting,Nssortdescriptor,Iam使用sqlite数据库详细信息在tableview中显示。使用NSSortDescriptor Iam能够以升序或降序显示表格行内容。请帮助我避免排序过程,并在输入内容时在tableview中显示内容。 这是我正在使用的代码。它通过对数据进行排序工作得很好,帮助我避免排序。 - (NSFetchedResultsController *)fetchedResultsController { // Set up the fetched results controlle

Iam使用sqlite数据库详细信息在tableview中显示。使用NSSortDescriptor Iam能够以升序或降序显示表格行内容。请帮助我避免排序过程,并在输入内容时在tableview中显示内容。 这是我正在使用的代码。它通过对数据进行排序工作得很好,帮助我避免排序。 -

 (NSFetchedResultsController *)fetchedResultsController {
          // Set up the fetched results controller if needed.
 if (fetchedResultsController == nil) {
    // Create the fetch request for the entity.
 NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
    // Edit the entity name as appropriate.
 NSEntityDescription *entity = [NSEntityDescription entityForName:@"book"   inManagedObjectContext:managedObjectContext];
    [fetchRequest setEntity:entity];     
    // Edit the sort key as appropriate.
  NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc]            initWithKey:@"name" ascending:YES];
  NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
    [fetchRequest setSortDescriptors:sortDescriptors];
    // Edit the section name key path and cache name if appropriate.
    // nil for section name key path means "no sections".
  NSFetchedResultsController *aFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:managedObjectContext sectionNameKeyPath:nil cacheName:@"Root"];
    aFetchedResultsController.delegate = self;
    self.fetchedResultsController = aFetchedResultsController;
  NSLog(@"inside table view %@",aFetchedResultsController);     
    [aFetchedResultsController release];
    [fetchRequest release];
    [sortDescriptor release];
    [sortDescriptors release];
    }
  return fetchedResultsController;
    }    

我假设您将核心数据与SQLLite一起使用。如果是这样,您应该使用NSFetchedResultsController,那么在web上有许多如何使用它的示例

NSFetchedResultsController需要一个排序描述符,如果您想让值无序,请记住,您是基于对控制器的获取结果中的元素的indexPath引用来填充表视图(-objectAtIndexPath:)

因此,您可以让它返回行数低于行数的随机索引路径