Ich benutze diesen Code, um das Element vom Cursor, aber es gibt nur einen Artikel auf meiner Liste. Also, wie kann ich alle Artikel auf meine Liste bekommen, das ist mein Code?Holen Sie sich alle Artikel von Cursor in Android
class MyAdapter extends SimpleCursorAdapter
{
private Context context;
public MyAdapter(Context context, int layout, Cursor c, String[] from, int[] to)
{
super(context, layout, c, from, to);
this.context = context;
}
public View getView(int position, View convertView, ViewGroup parent){
Cursor cursor = getCursor();
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
View v = inflater.inflate(R.layout.sbooks_row, null);
TextView title = (TextView)findViewById(R.id.title);
if(title != null){
int index = cursor.getColumnIndex(SBooksDbAdapter.KEY_TITLE);
String type = cursor.getString(index);
title.setText(type);
}
TextView lyrics = (TextView)findViewById(R.id.lyrics);
if(lyrics != null){
int index = cursor.getColumnIndex(SBooksDbAdapter.KEY_LYRICS);
String type = cursor.getString(index);
lyrics.setText(type);
}
ImageView im = (ImageView)findViewById(R.id.icon);
if(im!=null){
int index = cursor.getColumnIndex(SBooksDbAdapter.KEY_FAVORITE);
int type = cursor.getInt(index);
if(type==1){
im.setImageResource(android.R.drawable.btn_star_big_on);
}
else{
im.setImageResource(android.R.drawable.btn_star_big_off);
}
}
return v;
}
Hallo, ich versuche, meinen Code mit Ihrem Rat zu bearbeiten. Ich benutze newView(), bindView() - Funktionen, und es gibt alle Elemente zurück. Aber ich habe immer noch ein Problem in meinem Listview, es ist nicht wirklich normal. Ich meine, es wird anders angezeigt, wenn ich den Scollbar hoch und runter ziehe. Darf ich etwas vergessen haben? – Dennie
Was meinen Sie, wenn die Artikel nicht normal angezeigt werden? Wenn Sie sehen, dass alte Elemente angezeigt werden, anstatt neuer (passiert mir mit normalem Adapter), sollte ein Problem mit Ihrer Recycling-Logik (bindView()) auftreten. PS.Ich würde Ihnen auch empfehlen, das ViewHolder-Muster zu verwenden, wie hier erklärt: http://www.youtube.com/watch?v=N6YdwzAvwOA um 0:09:02. –
Dieser Video-Link ist sehr hilfreich für alle, die wissen wollen, was unter dem ListView passiert. Danke Dimitar! –