Return object from CursorAdapter.get()

user1610075 picture user1610075 · Aug 29, 2012 · Viewed 12.8k times · Source

I'm overriding CursorAdapter and I need to get the last item, problem is that CursorAdapter has actually a get() method...but source is a db and it returns a plain object!! (I don't even know what is it, I'd expect it returning a Cursor object instead...)

Neverthless, how can I make it return an instance of my Wrapper db row class?

Example: say my db has rows like these:

id|first name| surname

I'd make a class Person from that.

Now I'd like to have a Person get(int i) method from cursor adapter...

Answer

urSus picture urSus · Dec 25, 2012

well just use the adapter.getItem() and cast it to Cursor, and there is no need to move the cursor manually like in accepted answer

Cursor cursor = (Cursor) myCursorAdapter.getItem(position);
String myColumnValue = cursor.getString(cursor.getColumnIndex("YOUR_COLUMN_NAME"));