2016-07-03 5 views
0

私はあらゆる場所をオンラインで探しており、確かな答えを得ることはできません。配列内のコアデータに複数の属性が格納されたイベントがある場合、これらの個々のイベントをすべてtableViewに表示できます。属性の1つが日付であるとします。特定の日付を含むすべてのイベントを検索し、tableViewのイベントのみを表示するかどうか私はオンラインで見ているものからNSPredicateを使うことを考えていましたが、これに慣れていません。おそらく何とかその日付を含むイベントのインデックスを見つけ、そのインデックスのみを表示するでしょうか?何か案は?特定の日付属性を含むコアデータ配列のインデックスを検索します。

答えて

1

テーブルビューは、データの基本配列と1対1の関係を実装するように設計されています。通常は、fetchRequestを使用して表示するデータのみを取得します(個人的にはすべてのリクエストがデータモデルにあらかじめ定義されているので、データへのアクセス方法を把握できます)。
しかし、管理レコードの配列に表示する要素よりも多くの要素が含まれている必要がある場合は、表示するオブジェクトのみを含む(または参照する)中間配列にtableViewデータソースの応答を基にすることを検討する必要があります。例えば

let allEvents:[EventRecord] = GetAllEvents() 
var filteredEvents:[EventRecord] = allEvents.filter({ $0.eventDate.isEqualToDate(dateToDisplay) }) 

とあなたのデータソースのための基礎となるストアとしてfilteredEventsを使用しています。

これにより、フィルターの変更ごとにデータベースに戻らずに、フィルター条件を動的に変更してテーブルビューをリロードすることが容易になります。

+0

私は自分のコンピュータに戻ったときに言ったことを実装しようとします。応答していただきありがとうございます。 –

関連する問題