The best way I can think of doing this is by adding an attribute to the Conversation
entity called lastMessageSentDate
and, every time a Message
comes in and gets added to a Conversation
, setting that conversation's lastMessageSentDate
to that message's sentDate
. I'll also probably want to add an attribute called lastMessageText
to the Conversation
entity as well because I want to show the text of the last message for a conversation on the ConversationsViewController
(just like the native iPhone Messages app does), and doing so will save me from having to do another Core Data fetch for the Message
.
Actually, I just had an idea! Maybe I can sort Conversation
s by [email protected]
, according to Xcode Documentation: Key-Value Coding Programming Guide: Collection Operators.