Back to project page journal.
The source code is released under:
MIT License
If you think the Android project journal listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package cochrane343.journal; /* ww w . j av a 2 s .c o m*/ import android.content.Context; import android.database.Cursor; import android.support.v4.widget.CursorAdapter; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import cochrane343.journal.Constants.DisplayMode; import cochrane343.journal.contentprovider.JournalContract.Category; import cochrane343.journal.contentprovider.JournalContract.Expense; import cochrane343.journal.exceptions.IllegalDisplayModeException; /** * The adapter for populating the list of expenses. * * @author cochrane343 * @version 1.0 */ public class ExpensesListAdapter extends CursorAdapter { private DisplayMode displayMode; // TODO Add best practices such as view holders public ExpensesListAdapter(final Context context, final Cursor cursor) { super(context, cursor, false); } @Override public View newView(final Context context, final Cursor cursor, final ViewGroup parent) { final LayoutInflater inflater = LayoutInflater.from(context); return inflater.inflate(R.layout.list_item_expense, parent, false); } @Override public void bindView(final View view, final Context context, final Cursor cursor) { int descriptionIndex; int costIndex; switch (displayMode) { case CATEGORY_OVERVIEW: descriptionIndex = cursor.getColumnIndex(Category._NAME); costIndex = cursor.getColumnIndex(Category._TOTAL); break; case SINGLE_CATEGORY: descriptionIndex = cursor.getColumnIndex(Expense._DESCRIPTION); costIndex = cursor.getColumnIndex(Expense._COST); break; default: throw new IllegalDisplayModeException(displayMode.name()); } final String description = cursor.getString(descriptionIndex); final String translatedDescription = TranslationHelper.translate(description, context); final TextView descriptionTextView = (TextView) view.findViewById(R.id.list_item_expense_description); descriptionTextView.setText(translatedDescription); final long costInCents = cursor.getLong(costIndex); final String costString = CurrencyHelper.toPrintString(costInCents); final TextView costTextView = (TextView) view.findViewById(R.id.list_item_expense_cost); costTextView.setText(costString); } public void setDisplayMode(final DisplayMode displayMode) { this.displayMode = displayMode; } }