2016-11-18 8 views
-1

現在、私は、UITableViewの特定のソートを必要とするビューコントローラを持つコアデータを持つアプリケーションを持っています。エンティティは、event_nameassigned_timeの他の属性を持つことができます。基本的な考え方は、あるイベントがより最近の時間に割り当てられている場合、そのイベントが最初にテーブルビューに表示されることです。日付でグループ化するコアデータ

私が知りたいことは、自分の情報を並べ替える最も良い方法はassigned_timeですが、グループはevent_nameですか?私はassigned_timeのセクションでNSSortDescriptorを使用しようとしましたが、名前で注文してしまい、以前の時間のイベントを最初にリストに入れないことになります。

基本的に私は、セクションの順序は時間に依存する理由より最近のassigned_timeが入ってくると実体が

に、したがってNSFetchRequestのための私のコードをリストアップセクションをプッシュする場所電子メールのスレッドがどのように動作するかに似た何かを達成したいです

func getFetchRequest() -> NSFetchRequest<NSFetchRequestResult> { 
     let request = NSFetchRequest<NSFetchRequestResult>(entityName: "EntitySet") 
     request.predicate = ... 
     let eventSort = NSSortDescriptor(key: "event_name", ascending: true) 
     let timeSort = NSSortDescriptor(key: "assigned_time", ascending: false) 
     request.sortDescriptors = [eventSort, timeSort] 
     return request 
} 
+0

あなたのコードはどこにあります、次のようにありますか?何を試しましたか?あなたが試したことを見せて、あなたが自分自身を助けようとする時間を取ったことを実証すれば、あなたはより多くのより良い答えを得るでしょう。 See [Ask] –

答えて

0

これを試してみてください:

var request : NSFetchRequest<NSFetchRequestResult>! 
request.sortDescriptors = [NSSortDescriptor(key: "event_name", ascending: true), NSSortDescriptor(key: "assigned_time", ascending: true)] 
request.propertiesToGroupBy = ["event_name"] 
+0

私のセクションが 'event_name'の場合は、順序を指定する必要はありませんか? – user3536057

+0

あなたはassigned_timeで注文し、次にevent_nameでグループ化したいと言ったのですか? – CZ54

+0

そう、 'event_name'は私のテーブルビューのセクションヘッダーになります。私は間違っているかもしれませんが、あなたのセクションのソート順を指定しなければならないところを読んでいますか? – user3536057

関連する問題