私は、コアデータからのイベントをフィルタリングし、カレンダーで選択された日付と等しい日付属性を持つイベントのみを出力するコードを記述しました。フィルタリングされた配列からテーブルビューにデータを表示
これは機能し、私が望む方法でデータをフィルタリングし、必要なイベントのみを出力します。問題は、このデータをtableViewに表示する方法がわからないことです。通常、私は... cellForRowAtIndexPathでこのようにtableViewに
let ePast = eventsPast[indexPath.row]
let cellPast = self.tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! CustomCell
// Sets labels in cell to whatever user typed in on the events page
cellPast.titlePrototypeCell!.text = ePast.eventPastTitle!
cellPast.datePrototypeCell!.text = "Date: " + ePast.eventPastDateLabel!
return cellPast
をコアデータからすべてのデータを表示することができます...しかし、私は、私は上記のようにやった配列として、新たなデータにアクセスする方法がわからないです。何か案は?
これはスウィフトです! 'NSArray'と' NSPredicate'に橋渡しするのではなく、 'filter'のようなSwiftのネイティブ関数を使用してください。フィルタ操作の結果をデータソース配列に代入するだけです。 – vadian
あなたはたぶん、例を挙げることができますか?私はすべてを見てきましたが、これがCore Dataで動作する唯一の方法です。 –
コアデータからフィルタリングされたデータを取得する最適な方法は、フェッチ要求に割り当てられた述部です。それには、Core Dataドキュメンテーションのサンプルコードと同様に、ここに何千ものサンプルがあります。 – vadian