
GENiALi
Fortgeschrittenes Mitglied
- 11
Hallo
Für eine Liste habe ich mir einen eigenen Adapter und ein egenes Layout gebaut. Das funktioniert soweit einwandfrei.
Wenn ein Datensatz ein bestimmtes Flag gesetzt hat wird der Hintergrund des ListView Items geändert. Funktioniert auch noch wunderbar.
Wenn die Activity mit der Liste angezeigt wird soll der Hintergrund nach 10 Sekunden wieder verschwinden. Funktioniert nur ansatzweise. Dazu habe ich einen Timer der mir beim Auslösen die Daten neu aus der DB list und der ListView den Adapter neu zuweist.
Funktioniert soweit auch nicht schlecht bis auf den Punkt das die Schrift in den Items fast die Farbe des Hintergrundes hat. Und das sieht blöd aus.
Wie löst man so ein Updateteil vorzugsweise richtig?
Für eine Liste habe ich mir einen eigenen Adapter und ein egenes Layout gebaut. Das funktioniert soweit einwandfrei.
Code:
public View getView(int position, View convertView, ViewGroup parent)
{
View view = convertView;
if(view == null)
{
LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.alarm_item, null);
}
Alarm alarm = this.alarme.get(position);
if(alarm != null)
{
TextView tvFrom = (TextView)view.findViewById(R.id.alarm_item_tvFrom);
tvFrom.setText(alarm.getFrom());
TextView tvDate = (TextView)view.findViewById(R.id.alarm_Item_tvDate);
tvDate.setText(alarm.getDate().toLocaleString());
.....
if(alarm.getHighlight() == null || alarm.getHighlight() == true)
{
view.setBackgroundColor(Color.parseColor("#14FF0000"));
}
else
{
view.setBackgroundColor(Color.TRANSPARENT);
}
}
return view;
}
Code:
if(alarm.getHighlight() == null || alarm.getHighlight() == true)
{
view.setBackgroundColor(Color.parseColor("#14FF0000"));
}
Code:
alarme = alarmBal.getListOrderBy("date");
alarmAdapter = new AlarmAdapter(this, R.layout.alarm_item, alarme);
this.alarm_lvAlarme.setAdapter(alarmAdapter);
Wie löst man so ein Updateteil vorzugsweise richtig?