格式化sectionNameKeyPath NSFetchedResultsController - Swift

2023-11-29

我正在尝试格式化我的sectionNameKeyPath对于我的核心数据获取,使用存储的NSDate属性。它正在全面工作,并根据以下内容将记录拉动/排序到各个部分NSDate但我不知道如何格式化它以按 dd-mm-yyyy 显示它。

我知道如何格式化NSDate using:

let date = NSDate(timeIntervalSince1970:myTimeInterval)
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd-MM-yyyy"

我当前使用核心数据属性的获取请求sectionDate作为部分划分sectionNameKeyPath

FETCH

let fetchRequest = NSFetchRequest(entityName: "VisitDetails")
let primarySortDescriptor = NSSortDescriptor(key: "dateDue", ascending: false)
let sortDescriptors = [primarySortDescriptor]
fetchRequest.sortDescriptors = sortDescriptors
        
let frc = NSFetchedResultsController(
            fetchRequest: fetchRequest,
            managedObjectContext: self.managedObjectContext!,
            sectionNameKeyPath: "dateSections",
            cacheName: nil)
        
frc.delegate = self

因此,为了澄清我想要格式化输出并仅按 dd-MM-yyy 排序。目前,它看起来像:

enter image description here

我假设一个Hack正在创建附加属性并输入格式化字符串,然后使用它来划分结果?


我刚刚为我正在开发的一个项目做了这个。这就是我所做的:

可选但强烈推荐的是设置 mogenerator。有一个很好的教程here用于设置您的核心数据项目以使用它。

无论如何,在您的数据模型中,请确保您有一个与实体关联的 NSManagedObject 子类。如果您还没有,并且您没有使用 mogenerator,那么您可以按照苹果的方式做.

在您的 VisitDetails 类中,添加:

var formattedDateDue: String {
    get {
        let dateFormatter = NSDateFormatter()
        // Apple suggested locale-aware technique:
        // dateFormatter.dateStyle = .ShortStyle
        // dateFormatter.timeStyle = .NoStyle
        // ..or to stick to your original question:
        dateFormatter.dateFormat = "dd-MM-yyyy"
        return dateFormatter.stringFromDate(self.dateDue)
    }
}

(假设您希望您的部分按照 dateDue 的日期进行分组,否则为您的 dateSections 属性创建计算属性。)然后,您可以从上面修改您的获取结果控制器以使用计算属性:

let frc = NSFetchedResultsController(
        fetchRequest: fetchRequest,
        managedObjectContext: self.managedObjectContext!,
        sectionNameKeyPath: "formattedDateDue",
        cacheName: nil)

这就是全部!

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

格式化sectionNameKeyPath NSFetchedResultsController - Swift 的相关文章

  • Swift 中 UIImages 的淡入淡出动画

    我有一组图像 我希望它们在登录屏幕的背景中淡出 我无法在 swift 中找到任何可以做到这一点的东西 有什么办法我可以做到吗 这是我当前的代码 override func viewDidLoad super viewDidLoad star
  • 如何使用 afnetworking 在后台上传任务

    我正在尝试使用 AFNetworking 上传大文件 并在应用程序处于后台时继续上传 我可以很好地上传文件 但是当我尝试使用后台配置时 应用程序崩溃并显示以下堆栈跟踪 异常 EXC BAD ACCESS 代码 1 地址 0x8000001f
  • Xcode MyProjectName-Bridging-Header.h 不存在

    我想开始在我的 Objective C 项目中使用 Swift 所以我添加了一个快速类 import Foundation objc class System NSObject objc func printSome println Pri
  • XCode 调试 - 我可以绕过反汇编代码的单步执行吗

    调试项目时 在 XCode 中设置断点后 我将开始单步执行代码 然后我会遇到反汇编代码 我认为这些代码是对没有可用源代码的各种框架的调用 这是一个正确的假设吗 有没有一种方法 可能通过我尚未找到的项目设置 来抑制此汇编代码的显示 而不必单步
  • 错误 ITMS-9000 iTunes Connect

    我正在尝试上传一个phonegap build iOS应用程序到应用程序商店 我不断收到此错误 ERROR ITMS 9000 Missing Code Signing Entitlements No entitlements found
  • 在两个数字之间设置 UILabel 文本动画?

    我是 iPhone 和 Mac 编程新手 之前为 Windows 开发过 我有一个问题 我如何制作动画text的财产UILabel两个数字之间 例如从5 to 80以 Ease Out 风格 是否可以与CoreAnimation 我已经在谷
  • Xcode 9.0.1 应用程序分发程序已更改

    最近我将 Xcode 升级到了 Xcode 9 1 之后 当我尝试发布我的应用程序时 Xcode 不允许选择我为临时创建的分发配置文件 这么说 配置文件不是 IOS 应用商店配置文件 如果 Xcode 9 1 的应用程序分发过程有变化 请告
  • ObjC <-> Swift 桥接和工厂方法

    我想从 Swift 使用一些 Objective C 类 由于超出了这个问题范围的原因 我的班级init方法被标记为不可用 相反 有一个工厂方法 这是我的班级的简化形式 interface MyClass NSObject instance
  • UIWebView 未正确加载 JavaScript - 嵌入式 Facebook 帖子

    Facebook 有一项新功能 允许用户将公共帖子嵌入网页中 我想尝试在 UIWebView 内的 iPhone 应用程序中使用它 转义必要的代码非常简单 但即使我手动转义代码 Web 视图也不会正确加载帖子 JavaScript 根本不起
  • Swift:在 Core Data 中存储自定义类的数组

    我是核心数据新手 但对于我的一个新项目 我想将我的数据保存到核心数据 我想创建一个 Reptile 类 其中包含几个自定义类数组 如果没有核心数据 我会得到这样的东西 import Foundation import UIKit class
  • Xcode UI 测试 - 通过 id 在 Webview 中查找元素

    我们的应用程序是混合的 包含 webview 我正在尝试使用 Xcode UI 测试自动化我们的应用程序 我能够使用以下方法找到网络按钮 let app XCUIApplication app launch let button app s
  • 当 Firebase 函数以 Swift 结束时

    我在我的应用程序中使用 Firebase 它查询大量用户并获取所需的特定数据 但是当它开始查询时 其余功能也继续运行 而不仅仅是查询 所以我无法理解当它结束时 例如在这段代码中 ref observeEventType ChildAdded
  • iOS 中的词干 - 不适用于单个单词

    我在用NSLinguisticTagger用于词干提取 我能够获得句子中单词的词干 但无法获得单个单词的词干 以下是我正在使用的代码 NSString stmnt i waited NSLinguisticTaggerOptions opt
  • ios - 使用 SIGPIPE 和 SIG_IGN 的信号函数

    我加入了一个旧项目 我发现了这条线 BOOL application UIApplication application didFinishLaunchingWithOptions NSDictionary launchOptions si
  • 在Swift中计算没有透明度的颜色,通过用透明颜色叠加颜色获得

    我有一个具有非透明颜色的原始 UIVieworgColor 这是由一个覆盖 UIView 覆盖的 该 UIView 具有overlayColor具有透明度 alpha 通道 鉴于这两种颜色orgColor and overlayColor我
  • swift 3.0 中的 Sha 256 加密语法错误

    func SHA256 gt String let data self data using String Encoding utf8 let res NSMutableData length Int CC SHA256 DIGEST LE
  • 如何将代码 AVFoundation Objective C 转换为 Swift?

    我正在 swift 中使用 AVFoundation 来拍照 但我无法将任何 func 代码行从 Objective C 转换为 Swift 我的功能代码是 void capImage method to capture image fro
  • Sprite-kit:沿圆形路径移动元素

    我正在尝试让一个元素沿着圆圈的边缘移动 我在屏幕中间创建并放置了一个圆圈 var base SKShapeNode circleOfRadius 200 Size of Circle base position CGPointMake fr
  • iOS 上的本地通知需要用户许可吗?

    我在我的应用程序中使用 UILocalNotification 来安排通知 通知工作正常 并在我需要时显示 我对此没有意见 我没有做任何远程 推送通知 让我想知道的是 我从未见过您通常在多个应用程序中看到的推送通知的著名权限对话框 我什至重
  • UITableViewController 无法识别的选择器发送到实例

    当我传递一个整数时 我有一个 tableviewcontroller 和一个detailtableviewcontroller UITableViewController setSurveyNumber 无法识别的选择器发送到实例 Biza

随机推荐