| |||||||
Das Thema "Leere listView" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer Benutzer Registriert seit: 06.02.2011
Beiträge: 2
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
| ich habe folgendes Problem: Ich verwende eine Klasse welche von SimpleCursorAdapter erbt: Code: public class MyAdapter extends SimpleCursorAdapter {
private Cursor cursor;
private LayoutInflater inflater;
private int columnIndexRowID;
private int columnIndexFromAddrString;
private int columnIndexToAddrString;
public LastRequestsAdapter(Context context, int layout, Cursor c,
String[] from, int[] to) {
super(context, layout, c, from, to);
this.cursor = c;
this.inflater = LayoutInflater.from(context);
this.columnIndexRowID = c.getColumnIndex(MyDBAdapter.KEY_ROWID);
this.columnIndexFromAddrString = c
.getColumnIndex(MyDBAdapter.KEY_FROM_ADDR_STRING);
this.columnIndexToAddrString = c
.getColumnIndex(MyDBAdapter.KEY_TO_ADDR_STRING);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder;
if(convertView==null){
convertView = this.inflater.inflate(R.layout.main_activity_last_request_row, null);
viewHolder = new ViewHolder();
viewHolder.id = -1;
viewHolder.fromAddr = (TextView) convertView.findViewById(R.id.from);
viewHolder.toAddr =(TextView) convertView.findViewById(R.id.to);
viewHolder.arrow = (ImageView) convertView.findViewById(R.id.last_request_arrow);
convertView.setTag(viewHolder);
}else {
viewHolder = (ViewHolder) convertView.getTag();
}
this.cursor.moveToPosition(position);
viewHolder.id = this.cursor.getInt(columnIndexRowID);
viewHolder.fromAddr.setText(this.cursor.getString(this.columnIndexFromAddrString));
viewHolder.toAddr.setText(this.cursor.getString(this.columnIndexToAddrString));
viewHolder.arrow.setImageResource(R.drawable.arrow_alt);
return convertView;
}
public class ViewHolder{
public int id;
public TextView fromAddr;
public TextView toAddr;
public ImageView arrow;
}
} Code: listView.setAdapter(new MyAdapter(this,
R.layout.main_activity_last_request_row, dbCursor,
new String[] { MyDBAdapter.KEY_FROM_ADDR_STRING,
MyDBAdapter.KEY_TO_ADDR_STRING }, new int[] {
R.id.from, R.id.to })); Was ich auch sehr interessant finde, ist der Fakt, dass ich diesen Fehler nur auf meinem Gerät reproduzieren kann. Im Emulator lässt sich dieser Fehler nicht reproduzieren, was das debuggen verhältnismäßig schwer macht. Kennt jemand dieses Phänomen? Das ganze handelt sich um ein Uni-Projekt bei welchem am Dienstag Abgabetermin ist, daher würde ich mich über eine Antwort besonders freuen!! ![]() Danke schonmal im Voraus! Geändert von Maec (06.02.2011 um 12:57 Uhr) |
| | |
| | #2 (permalink) |
| Neuer Benutzer Registriert seit: 06.02.2011
Beiträge: 2
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Ok, ich habe mittlerweile heraus gefunden, dass der Fehler nicht auftritt, wenn ich das Überprüfen nach Code: (convertView == null) |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Leere SMS versenden | enrage | Samsung Galaxy S (I9000) Forum | 10 | 19.08.2011 17:12 |
| Leere Stellen Menü auffüllen | bvt-1 | Android Allgemein | 3 | 31.12.2010 18:36 |
| visionary und leere Ordner | ulbi | Root / Hacking / Modding für HTC Desire HD | 0 | 17.11.2010 17:03 |
| leere Fehlermldungbeim synchen | Nattii | HTC Desire Forum | 0 | 28.09.2010 21:41 |
| Browser - leere Seite? | Nonius | HTC Desire Forum | 5 | 16.07.2010 18:05 |