2012-06-14 17 views
6

Próbujesz zaimplementować LoaderManager + CursorLoader.SimpleCursorAdapter, zamienia kursor na poziomie interfejsu API poniżej 11

W onFinish adaptera metoda powinna zamienić jej kursor

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); 
    } 

Ale swapCursor jest dostępny od poziomu API 11.

Więc jak mam zamienić kursor w Android API 10?

Odpowiedz

0

Jeśli zastosujemy Android Studio sugestię zawinąć i wyjaśnienie swapCursor „s, że stary kursor nie był blisko, używając android.widget.CursorAdapter dostaniesz:

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(); 
    } 
} 
Powiązane problemy