瞬态部分NameKeyPath & NSSortDescriptor NSFetchedResultsController

2024-04-10

我在核心数据中有一个任务列表。我使用 NSFetchedResultsController 将它们提取到 UITableView 中。

我需要自定义订单中的自定义部分:

  1. OVERDUE
  2. ACTIVE
  3. ONGOING
  4. 推迟
  5. 完全的

为了确定任务应该进入哪个部分,我使用基于相关对象中的其他属性动态计算的派生瞬态属性。

不幸的是,您无法将派生值作为获取请求使用的排序描述符传递。这是因为提取依赖于已经拥有被要求提取的数据。鸡蛋。

我明白为什么我做不到,但这并不能帮助我解决问题!

我试过了:

  • 将 NSFetchedResultsController 子类化为 '定制创建 章节和索引标题 http://developer.apple.com/library/ios/DOCUMENTATION/CoreData/Reference/NSFetchedResultsController_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40008227-CH1-DontLinkElementID_2'。也许我做错了,但这只是改变了部分的名称和顺序,而不是这些部分中有多少东西(这很关键)。

  • 填充每个部分的数组并将它们输入到表中(笨重, 缓慢但完全有效)。

  • 取消正在进行的和推迟的任务(这有效,但并不理想)。这样我就可以按 dueDate 排序并通过瞬态值驱动sectionNameKeyPath。

有人有更好的想法吗?像这样的问题已经有很多了,但没有一个能找到一个完美的解决方案。

提前致谢!

Cheers


最简单的解决方案是添加持久的“部分”属性(或转换现有的瞬态属性)。使其成为一组可排序的值(您可以在运行时使用所需的名称显示这些值)。每当您更新任何记录时,也重新计算并存储部分属性。

我意识到这听起来像是您在存储冗余信息,但除了使您的逻辑更简单之外,它还将是可索引的,这将加快访问速度。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

瞬态部分NameKeyPath & NSSortDescriptor NSFetchedResultsController 的相关文章

  • Corebluetooth 方法 scanForPeripheralsWithServices 在任何设备中都不适用于我。所有 github 示例均不适用于我的设备 ipod touch

    我正在开发蓝牙相关的应用程序 但我没有取得任何成功 在我的应用程序中 我想将我的 iDevice 与任何其他正在扫描的蓝牙设备连接 但使用 CBCentralManager 方法 scanForPeripheralsWithServices
  • NSView 的 Autosizing 属性设置丢失

    我今天遇到了这个非常令人沮丧的问题 我想将我的视图设置为自动调整大小 如下所示 但我在 NSView 的 xcode 设置中找到的所有内容都是这样的 这两个屏幕截图取自具有相同 xcode 4 3 2 的两个不同项目 这是一个错误还是我错过
  • 查找 NSString 中子字符串的所有位置(不仅仅是第一个)

    有一个子串在字符串中出现多次 我用rangeOfString 不过好像只能找到第一个位置 如何找到子字符串的所有位置 NSString subString1 NSString subString2 n NSRange range1 newr
  • UIPopViewController 不工作

    我有一个 xib 文件 其中有 h 和 m 链接 在 xib 中有一个带有 textView 的 UIView 我想要对该视图执行的操作是 当您单击按钮时将其作为 UIPopViewController 打开 这是我的代码 IBAction
  • iOS HTTP 请求在后台运行

    当应用程序处于后台时 可以向 PHP 服务器发出 HTTP 异步请求吗 该应用程序是基于位置的应用程序 应收集当前位置并每 5 或其他值 分钟将坐标发送到服务器 即使应用程序处于后台 我也可以将 http 帖子发送到服务器吗 我读到了很多关
  • 如何让程序在登录时自动启动?

    如何设置菜单栏应用程序在登录时自动启动 我希望这是默认的 我可以简单地通过在 info plist 中添加一个 bool 来做到这一点吗 此解决方案仅适用于非沙盒应用程序 LSSharedFile此解决方案中使用的功能仅适用于非沙盒应用程序
  • 在 iPhone 应用程序中显示来自 RSS 源的内容

    我看过一些关于这个主题的教程 但它们都只讨论了一半 然后让人感到困惑 如何将 RSS feed 流式传输到 iPhone 应用程序中 我知道 xml 应该被读入 解析等 但随后我不确定如何显示我需要的信息 例如图像 嵌入视频等 如果有人能指
  • 如何在 UIImagePickerController 捕获图像的瞬间获取当前位置?

    我研究了如何从返回的图像中获取位置数据UIImagePickerController相机 但是 我认为最简单的方法是获取当前位置CLLocationManager此刻UIImagePickerController捕获图像 有办法做到这一点吗
  • Firebase 查询 - 查找包含字符串的子项

    我在使用 Firebase 查询时遇到了一些问题 我想查询对象 其中对象子值包含特定字符串 到目前为止 我有一些看起来像这样的东西 Firebase ref Firebase alloc initWithUrl https dinosaur
  • 从选定的文件夹中获取大小 >100MB 的文件列表及其路径目标 c

    我想获取我的 mac 系统的所有文件及其路径和大小的列表 由此 我只想过滤那些文件大小超过 100 MB 的文件 我使用下面的代码获取了系统的大小 NSError error NSFileManager fileManager NSFile
  • 如何在 Swift 3 中记录函数闭包参数的参数?

    在 Xcode 8 beta 和 Swift 3 中 当您有一个采用闭包作为参数的方法时 例如 func foo bar String gt Void bar Hello world 如何记录闭包所采用的参数 例如 如果我这样写 Calls
  • Xcode - 重命名项目会导致问题

    我目前正在开发 iPhone 应用程序 我从在互联网上找到的项目模板开始研究这个问题 现在我想重命名这个项目 我已经成功重命名了实际的项目文件 文件夹和可执行文件以及其他一些东西 但有一个奇怪的问题 如果我尝试在 iPhone 设备上运行该
  • iPhone – 类似 Photoshop 的效果

    我可以在 iPhone 中制作乘法 屏幕 颜色或其他类似 Photoshop 的效果吗 Check 石英演示 http developer apple com iphone library samplecode QuartzDemo ind
  • initWithFrame 与 initWithStyle

    我想从已弃用的 TableView 中更新initWithFrame reuseIdentifier 我的表格视图使用自定义单元格 到处都说要使用initWithStyle 并且它不会以任何方式改变行为或细胞initWithFrame CG
  • 框架链接错误,找不到图像?

    我在我的应用程序中使用 DarwiinRemote 的 WiiRemote framework 我已经通过下载源代码并要求垃圾收集以及针对 10 5 进行构建来修复了一些问题 但是 当我尝试将其添加到我的项目时 我收到控制台错误 dyld
  • UITextField 验证视觉反馈

    我有一个 uiTextField 我正在验证输入 当我输入无效时 有哪些适当的方法可以显示输入无效 是否有任何内置机制可以显示无效的输入状态 将 警告 图像添加到 UITextField 的左侧以指示该字段需要一个值非常容易 尝试这个 UI
  • 在 Xcode 中查看 TestFlight 崩溃日志

    我已将我的应用程序发送给 TestFlight 的一些外部测试人员 仅当您从 testFlight 安装应用程序时才会出现问题 如果我从 Xcode 安装它 一切都很好 因此 我必须从 iPhone 中删除我的应用程序 并将自己添加为外部测
  • 允许沙盒应用程序的 HID 控制

    我们正在尝试对我们的应用程序进行沙箱处理 以将其提交到 Mac App Store 这是第一次 它很难使用较低级别的 Carbon API 并且无法以其他方式操作 当我启用沙箱时 某些功能停止工作 我在日志中看到以下消息 9 14 12 1
  • iOS Javascript 引擎 parseFloat(1) 返回负数

    这段代码将使错误出现 function causeBug d var k var n parseFloat 1 var c Math abs d if n lt 0 k else k return k n function for var
  • 归档时出现“没有此类模块”错误

    我的 Swift 4 应用程序在所有模拟器上重建并成功运行 除了Generic iOS Device 如果我尝试将其存档或重建Generic iOS Device 我得到一个No such module与我的 Pod 框架之一相关的错误 我

随机推荐

  • CSS:不是属性[重复]

    这个问题在这里已经有答案了 我有一些 HTML 表格 这些表没有 CSS 类 两个表有width 100 属性 其他表没有width属性 仅使用 CSS 我需要设置没有的表格的宽度width 100 像这样的事情 table not wid
  • 同态加密算法的实际应用?

    密码学中似乎发生了一些有趣的事情 第一个同态加密 http en wikipedia org wiki Homomorphic encryption最近出现了方案 解释 http www mail archive com cryptogra
  • 从 iOS4 在后台发布位置更新

    我可以从 iOS4 在后台向我的服务器发送位置更新吗 我想要获取用户位置更改并使用 Web 服务调用将其发布到服务器 这里的主要问题是 当应用程序在后台时是否可以调用网络服务或http post 绝对可以 而且您可能想要回顾一下之前的帖子
  • MVC 6 HttpPostedFileBase?

    我正在尝试使用上传图像MVC 6 但是 我找不到该课程HttpPostedFileBase 我已经检查过GitHub并且没有任何运气 有谁知道上传文件的正确方法MVC6 MVC 6 使用另一种机制来上传文件 您可以获取更多示例GitHub
  • Java中的数组修改(改变数组“分辨率”)

    我想创建一个函数来更改整数数组的大小 同时保持其 形状 目的是加快 FFT 的计算速度 它返回一个新的大小数组y每个元素是它在旧数组中 覆盖 的元素的平均值 例如 如果我有一个数组w有 3 个元素 并且想要创建另一个数组z有 2 个元素 第
  • 了解 Cloud Firestore 安全规则的限制

    我正在为我的 Firestore 数据库编写安全规则 并且我可能编写了太多检查并且授权自动失败 例如 特定路径的规则是 service cloud firestore match databases database documents m
  • 使用 TEmbeddedWB 或 TWebBrowser 检测外部内容

    我试图阻止由 TEmbeddedWB 或 TWebBrowser 或 TCppWebBrowser 加载的任何外部内容 我想阻止从互联网加载的任何内容 包括图像 javascript 外部 CSS 外部 embed 或 object 或 a
  • eclipse下同一个多模块maven项目的多个版本

    我想从事两个不同的版本 of the 相同的多模块 Maven 项目日食之下 不幸的是 当你在eclipse下导入多模块maven项目时 你可以改变父模块项目名称自己命名 以防止冲突 但是不是子模块项目名称 子模块作为根项目导入 以模块名称
  • 使用 GPS 获取 Android 手机的位置

    我还有一个关于基本 Android 编程的问题 如何访问 GPS 来获取运行应用程序的手机的当前位置 检索信息需要多长时间 在这种情况下 GPS 可能被禁用 如何再次启用 禁用它 必须在 andorid 清单中授予哪些权限 问候并感谢您的回
  • 移动结账时不存在 PayPal POST 付款变量

    我使用 JS 立即购买按钮进行付款 如下所示
  • Rails 中的订单确认页面

    我一直在尝试为我的 Rails 应用程序创建一个订单确认页面 但不太确定如何以一种轻松的方式完成它 上面有几个答案this https stackoverflow com questions 445293 ruby on rails con
  • 将静态库添加到 podspec

    我的 podspec 需要静态库 OpenSSL 为了方便起见 我将库与 Pod 一起运送 静态库包含 二进制文件 MyPod openssl bin libcrypto a and MyPod openssl bin libsll a 标
  • awk + ​​如何查找列中的重复项?

    如何查找列中的重复项 head countries lat long int code3 csv cat n 1 country latitude longitude name code 2 AD 42 546245 1 601554 An
  • Django transaction.commit_on_success 不回滚事务

    我正在尝试在 MySQL 上使用 Django 事务the commit on success装饰者 http docs djangoproject com en dev topics db transactions django db t
  • 创建反应应用程序不在开发或构建中加载CSS背景图像

    我无法加载某些背景图像 我对最初的创建反应应用程序进行了一些重大修改 我的文件夹结构现在如下 注意 我省略了一些文件和文件夹 如果您需要更多 请告诉我 App node modules src client build node modul
  • CSS/JavaScript:使元素成为最顶层的 z-index/最顶层的模态元素

    我想制作一个元素 例如 div 是页面的最顶层 我的假设是 我能做到这一点的唯一方法是指定该元素具有style z index 浏览器允许的最大值 int32 它是否正确 相反 是否有可能以某种方式获取元素的z index谁的最高 并使这个
  • Spring MVC Web 应用程序 - 从属性启用/禁用控制器

    我有一个在 Tomcat 中运行的 Web 应用程序 并使用 Spring MVC 来定义控制器和映射 我有以下课程 Controller api test public class TestController RequestMappin
  • 你如何处理NUL?

    当我们谈论 NULL 时 我有时会遇到与其他程序员的沟通问题 现在 NULL 可以是 空指针NUL 字符某种数据库中的空数据元素 NUL 似乎是最令人困惑的 它是 ASCII 字符 0x00 我倾向于在代码中使用 0 来表示它 我小组中的一
  • 如何获取 JavaScript 对象的类?

    我创建了一个 JavaScript 对象 但是如何确定该对象的类 我想要类似于Java的东西 getClass 方法 没有与 Java 完全对应的东西getClass http docs oracle com javase 7 docs a
  • 瞬态部分NameKeyPath & NSSortDescriptor NSFetchedResultsController

    我在核心数据中有一个任务列表 我使用 NSFetchedResultsController 将它们提取到 UITableView 中 我需要自定义订单中的自定义部分 OVERDUE ACTIVE ONGOING 推迟 完全的 为了确定任务应