Skip to content

Instantly share code, notes, and snippets.

@jpotts18
Created April 3, 2014 20:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jpotts18/9962463 to your computer and use it in GitHub Desktop.
Save jpotts18/9962463 to your computer and use it in GitHub Desktop.
package io.starterkit.droid.activities;
import android.app.Activity;
import android.app.LoaderManager;
import android.content.CursorLoader;
import android.content.Loader;
import android.database.Cursor;
import android.os.Bundle;
import android.widget.CursorAdapter;
import android.widget.ListView;
import butterknife.ButterKnife;
import butterknife.InjectView;
import io.starterkit.droid.R;
import io.starterkit.droid.adapters.MessageAdapter;
import io.starterkit.droid.data.database.table.MessageTable;
import io.starterkit.droid.data.database.table.UserTable;
import io.starterkit.droid.data.provider.StarterProvider;
import io.starterkit.droid.utils.FlatUI;
public class MessagesActivity extends Activity implements LoaderManager.LoaderCallbacks<Cursor> {
@InjectView(R.id.messages_messages_list) ListView mMessagesList;
CursorAdapter mAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_messages);
ButterKnife.inject(this);
FlatUI.setActionBarTheme(this, FlatUI.DEEP, false, true);
mAdapter = new MessageAdapter(this, null, 0);
mMessagesList.setAdapter(mAdapter);
getLoaderManager().initLoader(0, null, this);
}
@Override
public Loader<Cursor> onCreateLoader(int i, Bundle bundle) {
return new CursorLoader(
this,
StarterProvider.USER_JOIN_MESSAGE_CONTENT_URI,
new String[]{ UserTable.USERNAME, UserTable.AVATAR_URL, MessageTable.BODY, MessageTable.LIKES },
null,
null,
null
);
}
@Override
public void onLoadFinished(Loader<Cursor> cursorLoader, Cursor cursor) {
cursor.moveToFirst();
mAdapter.swapCursor(cursor);
}
@Override
public void onLoaderReset(Loader<Cursor> loader) {
mAdapter.swapCursor(null);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment