Android Open Source - ElyTheme Silk Cursor List Fragment From Project Back to project page ElyTheme .
License The source code is released under:
GNU General Public License
If you think the Android project ElyTheme listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package com.afollestad.silk.fragments.list;
/ / f r o m w w w . j a v a 2 s . c o m
import android.app.LoaderManager;
import android.content.CursorLoader;
import android.content.Loader;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import com.afollestad.silk.adapters.SilkCursorAdapter;
import com.afollestad.silk.SilkComparable;
import com.afollestad.silk.SilkCursorItem;
/**
* @author Aidan Follestad (afollestad)
*/
public abstract class SilkCursorListFragment<ItemType extends SilkCursorItem & SilkComparable> extends SilkListFragment<ItemType> implements LoaderManager.LoaderCallbacks<Cursor> {
protected abstract Uri getLoaderUri();
protected abstract String getLoaderSelection();
protected abstract String[] getLoaderProjection();
protected abstract String getLoaderSort();
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
onInitialRefresh();
}
protected void onInitialRefresh() {
setListShown(false);
getLoaderManager().restartLoader(0, null, this );
}
@Override
public CursorLoader onCreateLoader(int i, Bundle bundle) {
return new CursorLoader(getActivity(), getLoaderUri(), getLoaderProjection(), getLoaderSelection(), null, getLoaderSort());
}
@Override
public final void onLoadFinished(Loader<Cursor> arg0, Cursor data) {
setListShown(true);
if (data == null || data.getColumnCount() == 0 || data.getCount() == 0) {
onCursorEmpty();
return ;
}
if (getAdapter() != null) onPostLoadFromCursor(data);
}
@Override
public final void onLoaderReset(Loader<Cursor> arg0) {
if (getAdapter() != null) {
((SilkCursorAdapter) getAdapter()).changeCursor(null);
}
}
@Override
public SilkCursorAdapter<ItemType> getAdapter() {
return (SilkCursorAdapter<ItemType>) super.getAdapter();
}
protected abstract SilkCursorAdapter<ItemType> initializeAdapter();
protected void onCursorEmpty() {
setListShown(true);
}
protected void onPostLoadFromCursor(Cursor cursor) {
((SilkCursorAdapter) getAdapter()).changeCursor(cursor);
setListShown(true);
}
protected void clearProvider() {
getActivity().getContentResolver().delete(getLoaderUri(), null, null);
}
}
Java Source Code List com.afollestad.cardsui.ApplicationTest.java com.afollestad.cardsui.CardAdapter.java com.afollestad.cardsui.CardBase.java com.afollestad.cardsui.CardCenteredHeader.java com.afollestad.cardsui.CardCompressed.java com.afollestad.cardsui.CardCursorAdapter.java com.afollestad.cardsui.CardHeader.java com.afollestad.cardsui.CardListView.java com.afollestad.cardsui.CardTheme.java com.afollestad.cardsui.Card.java com.afollestad.silk.ApplicationTest.java com.afollestad.silk.SilkComparable.java com.afollestad.silk.SilkCursorItem.java com.afollestad.silk.Silk.java com.afollestad.silk.activities.SilkDrawerActivity.java com.afollestad.silk.adapters.ScrollStatePersister.java com.afollestad.silk.adapters.SilkAdapter.java com.afollestad.silk.adapters.SilkCursorAdapter.java com.afollestad.silk.adapters.SilkSpinnerAdapter.java com.afollestad.silk.dialogs.SilkDialog.java com.afollestad.silk.fragments.feed.SilkCursorFeedFragment.java com.afollestad.silk.fragments.feed.SilkFeedFragment.java com.afollestad.silk.fragments.list.SilkCursorListFragment.java com.afollestad.silk.fragments.list.SilkListFragment.java com.afollestad.silk.http.SilkHttpBase.java com.afollestad.silk.http.SilkHttpBody.java com.afollestad.silk.http.SilkHttpCallback.java com.afollestad.silk.http.SilkHttpClient.java com.afollestad.silk.http.SilkHttpException.java com.afollestad.silk.http.SilkHttpHeader.java com.afollestad.silk.http.SilkHttpResponse.java com.afollestad.silk.utilities.IOUtils.java com.afollestad.silk.utilities.TimeUtils.java com.afollestad.silk.views.ClickableToast.java com.afollestad.silk.views.list.OnSilkScrollListener.java com.afollestad.silk.views.list.SilkGridView.java com.afollestad.silk.views.list.SilkListView.java com.afollestad.silk.views.time.SilkDatePicker.java it.gcaliendo.elytheme.Adw.java it.gcaliendo.elytheme.ApplicationTest.java it.gcaliendo.elytheme.DocksProvider.java it.gcaliendo.elytheme.Docks.java it.gcaliendo.elytheme.IconActivity.java it.gcaliendo.elytheme.IconPack.java it.gcaliendo.elytheme.IconsProvider.java it.gcaliendo.elytheme.Icons.java it.gcaliendo.elytheme.RequestActivity.java it.gcaliendo.elytheme.ThemeActivity.java it.gcaliendo.elytheme.Wallpaper.java it.gcaliendo.elytheme.fragments.FragmentAbout.java it.gcaliendo.elytheme.fragments.FragmentContact.java it.gcaliendo.elytheme.fragments.FragmentExtras.java it.gcaliendo.elytheme.fragments.FragmentTheme.java it.gcaliendo.elytheme.helper.AppInfo.java it.gcaliendo.elytheme.iconfragment.IconFragmentGames.java it.gcaliendo.elytheme.iconfragment.IconFragmentLatest.java it.gcaliendo.elytheme.iconfragment.IconFragmentMisc.java it.gcaliendo.elytheme.iconfragment.IconFragmentPlay.java it.gcaliendo.elytheme.iconfragment.IconFragmentSystem.java