Tecnologia do Blogger.
RSS

[androidbrasil-dev] Re: Adicionar Id numa lista com CursorAdapter

Opa @Gilmar,

Não faço idéia de como fazer isso.
=/

On 3 fev, 17:46, Gilmar Soares <linux.soa...@gmail.com> wrote:
> Amigo,
>
> Acredito que a melhor forma é você pegar esse id tratar esse dado em um
> método com uma query que retorne seu select com o dado que procura :-)
> Vou fazer dessa forma o meu, abraços
> Em 03/02/2012 18:41, "Janes Roberto da Costa" <kadosh...@gmail.com>
> escreveu:
>
>
>
>
>
>
>
> > Olá pessoal,
>
> > Estou iniciando meus estudos com o Android e gostaria de uma ajuda.
> > Fiz um Adapter extendendo um CursorAdapter para preencher uma lista
> > personalizada.
> > Agora gostaria de saber como faço para relacionar cada item da lista à id
> > do registro da base de dados.
> > A idéia é recuperar a id do item pressionado para exibir uma Activity com
> > mais informações.
> > O código do Adapter é este:
>
> > package br.com.jdroid.feriados.Adapter;
>
> > import br.com.jdroid.feriados.R;
>
> > import android.content.Context;
> > import android.database.Cursor;
> > import android.view.LayoutInflater;
> > import android.view.View;
> > import android.view.ViewGroup;
> > import android.widget.CursorAdapter;
> > import android.widget.ImageView;
> > import android.widget.TextView;
>
> > public class AnniversariesAdapter extends CursorAdapter{
>
> >     private LayoutInflater mInflater;
> >     private int mRowIdIndex;
> >     private int mTitleIndex;
> >     private int mDayIndex;
> >     private int mMounthIndex;
> >     private int mCategoryIndex;
>
> >     public AnniversariesAdapter(Context context, Cursor c) {
> >         super(context, c);
> >         mRowIdIndex = c.getColumnIndex(FeriadosDbAdapter.KEY_ROWID);
> >         mTitleIndex = c.getColumnIndex(FeriadosDbAdapter.KEY_TITLE);
> >         mDayIndex = c.getColumnIndex(FeriadosDbAdapter.KEY_DAY);
> >         mMounthIndex = c.getColumnIndex(FeriadosDbAdapter.KEY_MONTH);
> >         mCategoryIndex = c.getColumnIndex(FeriadosDbAdapter.KEY_CATEGORY);
>
> >         mInflater = LayoutInflater.from(context);
> >     }
>
> >     @Override
> >     public void bindView(View view, Context context, Cursor c) {
> >         //ListView v = (ListView) view.findViewById(R.id.);
> >         ImageView image = (ImageView)
> > view.findViewById(R.id.calendar_icon);
> >         TextView title = (TextView) view.findViewById(R.id.title);
> >         TextView abbrev = (TextView) view.findViewById(R.id.abbrev);
>
> >         int cat = c.getInt(mCategoryIndex);
> >         if (cat == 1) image.setImageResource(R.drawable.ic_calendar);
> >         if (cat == 2) image.setImageResource(R.drawable.ic_calendar_2);
>
> >         title.setText(c.getString(mTitleIndex));
> >         abbrev.setText(c.getString(mDayIndex) + "/" +
> > c.getString(mMounthIndex));
>
> >     }
>
> >     @Override
> >     public View newView(Context context, Cursor cursor, ViewGroup parent)
> > {
> >         return mInflater.inflate(R.layout.dates_row, null);
> >     }
> > }
>
> > E o Activity principal da aplicação é este:
>
> > package br.com.jdroid.feriados;
> > import  br.com.jdroid.feriados.R;
>
> > import br.com.jdroid.feriados.Adapter.AnniversariesAdapter;
> > import br.com.jdroid.feriados.Adapter.FeriadosDbAdapter;
>
> > import android.app.ListActivity;
> > import android.database.Cursor;
> > import android.os.Bundle;
>
> > public class ListAnniversariesActivity extends ListActivity {
>
> >     private FeriadosDbAdapter mDbHelper;
>
> >     @Override
> >     public void onCreate(Bundle savedInstanceState) {
> >         super.onCreate(savedInstanceState);
> >         setContentView(R.layout.list_dates);
> >         mDbHelper = new FeriadosDbAdapter(this);
> >         mDbHelper.open();
>
> >         fillData();
>
> >     }
>
> >     private void fillData() {
> >         Cursor datesCursor = mDbHelper.fetchAll();
> >         startManagingCursor(datesCursor);
> >         AnniversariesAdapter adapter = new AnniversariesAdapter(this,
> > datesCursor);
> >         setListAdapter(adapter);
> >     }
> > }

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário