i have a custom CursorAdapter that populates a list view from a database. my problem is that the list view never shows the last entry i made in the database. it always shows the one before the last and for some reason when i scroll down the list, the first entry i made to the database, is always the last entry too. i don't know if its just the emulator or something else. please here is the main code for the customised CursorAdapter. thank you
private void fillData() { Cursor c = adapter.retrieveItems(); startManagingCursor(c); String[] from = new String[]{DBAdapter.NAME, DBAdapter.START_DATE, DBAdapter.START_TIME}; int[] to = new int[]{R.id.viewNameId, R.id.viewDateId, R.id.viewTimeId, }; customCursorAdapter items = new customCursorAdapter(this, R.layout.view_items, c,from, to); setListAdapter(items); } public class customCursorAdapter extends SimpleCursorAdapter { private int layout; Context context; public customCursorAdapter(Context context, int layout, Cursor c, String[]from, int[] to) { super(context, layout, c, from, to); this.layout = layout; this.context = context; } @Override public void bindView(View view, Context context, Cursor c) { int namecol = c.getColumnIndex(DBAdapter.NAME); String name = c.getString(namecol); TextView viewItemName = (TextView)findViewById(R.id.viewNameId); if(viewItemName != null){ viewItemName.setText(name); viewItemName.setTextColor(Color.RED); } } @Override public View newView(Context context, Cursor cursor, ViewGroup parent) { LayoutInflater inflater = LayoutInflater.from(context); final View view = inflater.inflate(layout, parent, false); return view; } }