Ios 如何更改coredata中的记录顺序?
我在核心数据中有一些记录,包括姓名、简历、电子邮件、图片等。。我在集合视图中显示这些数据,在那里我提供了拖放/移动单元格功能。现在如何更新核心数据中重新排序/重新排列的数据?请帮助。CoreData没有任何订购 你要做的是对你获取的数据进行排序。例如,如果使用Ios 如何更改coredata中的记录顺序?,ios,objective-c,iphone,core-data,Ios,Objective C,Iphone,Core Data,我在核心数据中有一些记录,包括姓名、简历、电子邮件、图片等。。我在集合视图中显示这些数据,在那里我提供了拖放/移动单元格功能。现在如何更新核心数据中重新排序/重新排列的数据?请帮助。CoreData没有任何订购 你要做的是对你获取的数据进行排序。例如,如果使用NSFetchRequest,则可以添加一组nssortddescriptor,用于指定提取数据的排序顺序 例如: NSFetchRequest *request = .... request.sortDescriptors = @[[NS
NSFetchRequest
,则可以添加一组nssortddescriptor
,用于指定提取数据的排序顺序
例如:
NSFetchRequest *request = ....
request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES]];
编辑:在评论之后:
如果必须将排序持久化到CoreData存储中,那么我看到的唯一方法就是在模型中添加一个integer属性。默认情况下,您可以将其保留在-1
,即无订单。
在UI中执行拖放操作时,可以将索引保存到属性,并将其保存在存储中
您的获取请求可能会变成
request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"order" ascending:YES], [NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES]];
这样,如果排序相等(-1),将考虑名称,否则索引具有优先级。CoreData没有任何排序 你要做的是对你获取的数据进行排序。例如,如果使用
NSFetchRequest
,则可以添加一组nssortddescriptor
,用于指定提取数据的排序顺序
例如:
NSFetchRequest *request = ....
request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES]];
编辑:在评论之后:
如果必须将排序持久化到CoreData存储中,那么我看到的唯一方法就是在模型中添加一个integer属性。默认情况下,您可以将其保留在-1
,即无订单。
在UI中执行拖放操作时,可以将索引保存到属性,并将其保存在存储中
您的获取请求可能会变成
request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"order" ascending:YES], [NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES]];
这样,如果排序相等(-1),将考虑名称,否则索引具有优先级。CoreData没有任何排序 你要做的是对你获取的数据进行排序。例如,如果使用
NSFetchRequest
,则可以添加一组nssortddescriptor
,用于指定提取数据的排序顺序
例如:
NSFetchRequest *request = ....
request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES]];
编辑:在评论之后:
如果必须将排序持久化到CoreData存储中,那么我看到的唯一方法就是在模型中添加一个integer属性。默认情况下,您可以将其保留在-1
,即无订单。
在UI中执行拖放操作时,可以将索引保存到属性,并将其保存在存储中
您的获取请求可能会变成
request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"order" ascending:YES], [NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES]];
这样,如果排序相等(-1),将考虑名称,否则索引具有优先级。CoreData没有任何排序 你要做的是对你获取的数据进行排序。例如,如果使用
NSFetchRequest
,则可以添加一组nssortddescriptor
,用于指定提取数据的排序顺序
例如:
NSFetchRequest *request = ....
request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES]];
编辑:在评论之后:
如果必须将排序持久化到CoreData存储中,那么我看到的唯一方法就是在模型中添加一个integer属性。默认情况下,您可以将其保留在-1
,即无订单。
在UI中执行拖放操作时,可以将索引保存到属性,并将其保存在存储中
您的获取请求可能会变成
request.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"order" ascending:YES], [NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES]];
这样,在排序相等(-1)的情况下,将考虑名称,否则索引具有优先级。您需要有一个itemOrder属性,该属性根据每个记录的索引XPath存储到每个记录的位置,然后,后续回迁应按相同的属性排序。您需要有一个itemOrder属性,该属性根据每个记录的indexpath存储到每个记录的位置,然后后续回迁应按相同的属性排序。您需要有一个itemOrder属性,该属性根据每个记录的indexpath存储到每个记录的位置,然后,后续回迁应按相同的属性排序。您需要有一个itemOrder属性,该属性根据每个记录的indexpath存储到每个记录的位置,然后后续回迁应按相同的属性排序。