Will the correct implementation mark the row in the database as read, and then request the cursor?
Yes, that is the correct answer. requery() will automatically update your CursorAdapter , which will automatically update the ListView , which will cause the user to smile automatically. CursorAdapter
UPDATE
The requery() method is deprecated. Currently, it is best to run a query to get a fresh Cursor , and then use changeCursor() or swapCursor() on the CursorAdapter .
source share