2012-06-14 11 views
6

Tentativo di implementare LoaderManager + CursorLoader.SimpleCursorAdapter, spostamento del cursore nel livello API inferiore a 11

In adattatore metodo OnFinish dovrebbe scambiare il suo cursore

public void onLoadFinished(Loader<Cursor> loader, Cursor data) { 
    // Swap the new cursor in. (The framework will take care of closing the 
    // old cursor once we return.) 
    mAdapter.swapCursor(data); 
    } 

Ma swapCursor è disponibile dal livello API 11.

Allora, come devo scambiare cursore API Android 10?

risposta

0

Se seguite Studio Android suggerimento per avvolgere e spiegazione swapCursor s' che il vecchio cursore non era vicino, utilizzando android.widget.CursorAdapter, si ottiene:

public void onLoadFinished(Loader<Cursor> loader, Cursor data) { 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { 
     mAdapter.swapCursor(data); 
    } else { 
     Cursor oldCursor = mAdapter.getCursor(); 
     mAdapter.changeCursor(data); 
     oldCursor.close(); 
    } 
} 
Problemi correlati