0

現在、SwiftのコアデータでNSFe​​tchedResultsControllerからsectionNameKeyPathを使い始めたところです/

私のアプリの画像

最初は、異なるセルをそれぞれの日付に分割する方法がわかりませんでした。しかし、セルをそれぞれの日付に分割したので、セグエを実行して2番目のviewControllerにつながると、値が台無しになるため、それらのindexPathはすべて台無しになります。

例えば

  • 2 番目の $42.5 -> $9.0、
  • $10 -> $9.0、
  • $72.0 -> $42.5,
  • $0.0 -> $99.0 および $9.0 -> $10.0

coreData からフェッチした後、各セクションに合わせて indexPath を適切に調整する方法を誰かが教えてくれれば、本当に助かります。

    func initialFetch() {
    let fetchRequest: NSFetchRequest<Item> = Item.fetchRequest()
    fetchRequest.sortDescriptors = [NSSortDescriptor(key: "dates", ascending: false)] //sorting according to date


    let controller = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: context, sectionNameKeyPath: "dates", cacheName: nil)

    controller.delegate = self

    self.controller = controller
    do {
        try controller.performFetch()
    } catch {
        fatalError("Failed to fetch entities: \(error)")
    }
}

これがデータを取得するための私のコードです

PSこれは私の「didSelectRowAt」と関係があるかもしれないと思います

    func tableView(_ tableView: UITableView, didSelectRowAt      indexPath: IndexPath) {
    if let objs = controller.fetchedObjects, objs.count > 0 {
        let item = objs[indexPath.row]
        performSegue(withIdentifier: "TrackerVC", sender: item)
    }
}
4

2 に答える 2