Android: BaseAdapter jak?

hlasů
2

Ok, jsem hledal dobrém i zlém, a já jsem s některými problémy s implementací BaseAdapter.

Byl jsem schopen realizovat jednoduchý kurzoru adaptér http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/List7.html podle výše uvedeného příkladu.

Tam je docela dobrý BaseAdapter příkladem: Google List14 příklad

Já jsem chtěl vytvořit svůj vlastní seznam adaptérů pomocí BaseAdapter ukázat ListView, s více položek z databáze. Vím, že to lze provést pomocí kurzoru jednoduchého adaptéru, ale já koukám zpracovat řádky jinak, takže chci, aby bylo možné čerpat každý řádek naléhavými getView. Tyto údaje by byly vytaženy z kurzoru.

Vím, že tento kód je ošklivý pro získání dat kurzor, ale za předpokladu, že jsem naplněn kurzor. Jaký podněty máte na to, pokud sloupec 8 obsahuje ID obrázku zdrojů. :

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    // TODO Auto-generated method stub
    cursor.moveToPosition(position);
    ImageView i = new ImageView(mContext);
    i.setImageResource(cursor.getShort(8));
    i.setAdjustViewBounds(true);
    i.setLayoutParams(new AbsListView.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));

    return i;
}

Máte nějaké dobré příklady BaseAdapter, že je přitahován pomocí kurzoru?

Položena 12/02/2009 v 09:17
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
4

Zkuste volat notifyDataSetChanged()z metody uvnitř BaseAdaptersebe.

Viz metody v List8 API ukázky jako příklad.

Odpovězeno 31/03/2011 v 11:43
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more