gpt4 book ai didi

ios - 核心数据中的谓词和组合过滤器?

转载 作者:行者123 更新时间:2023-11-29 01:54:24 25 4
gpt4 key购买 nike

我目前没有使用 Core Data,但我打算从 Realm 切换到它,如果我确定某个东西可以工作,这对我的应用程序当前的工作方式至关重要。我有一个包含两个对象的模型:

Message:
date - NSDate
text - String
images - One-to-many > Image

Image:
imageURL - String
message - Many-to-one > Image

我有一个显示图像和消息的表格 View 。当 UITableView 想知道时,我需要知道应该在某个索引路径上做什么。所以我需要能够执行类似于以下的查询:

“给我一个有序的图像和消息列表,消息按它们的 date 排序,图像按它们的 message.date 排序。

我怎样才能做到这一点?

最佳答案

据我所知,您无法在核心数据提取请求期间对包含消息和图像的混合数组进行排序。这是一种可能的方法:

  1. 分别获取消息和图片
  2. 将两个数组合并为一个
  3. 对唯一的一个数组进行排序- (NSArray *)sortedArrayUsingFunction:(NSInteger (*)(id, id, void *))comparator context:(void *)context

函数

 NSInteger sort(id item1, id item2, void *context) {
int v1 = [item1 iskindofClass[message class]]?item1.data:item1.message.date;
int v2 = [item2 iskindofClass[message class]]?item1.data:item1.message.date;
if (v1 < v2)
return NSOrderedAscending;
else if (v1 > v2)
return NSOrderedDescending;
else
return NSOrderedSame;
}

关于ios - 核心数据中的谓词和组合过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31052550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com