Итак, у меня довольно раздражающая проблема с просмотром списка. Мое приложение работало нормально до тех пор, пока на моем Droid 2 не появилось обновление Android 2.3.3.
Есть несколько аспектов этой проблемы.
1. Фон всегда серый в пустых слотах.
2. Последняя запись в списке кажется невидимой, пока она не выбрана. При выборе вы можете увидеть черный текст, но без фона.
3. Другие / более старые записи в списке отображаются с правильным цветом фона.
Я пробовал довольно много вещей, и, похоже, это ничего не исправило.
Мысли? * * 1005
Определение списка
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:gravity="left|center"
android:layout_width="wrap_content"
android:layout_alignParentBottom="true"
android:paddingLeft="1px">
<TextView android:text=""
android:id="@+id/list_view_text_view"
android:layout_width="wrap_content"
android:textSize="13sp"
android:singleLine="false"
android:layout_height="wrap_content"
android:layout_marginLeft="1sp">
</TextView>
</LinearLayout>
Основной макет списка
<ListView android:id="@+id/ListView01"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignRight="@+id/Button06"
android:layout_below="@+id/TextView01"
android:layout_alignLeft="@+id/TextView01"
android:layout_marginBottom="2sp"
android:layout_marginRight="2sp"
android:layout_marginLeft="2sp"
android:layout_above="@+id/EditText01"
android:transcriptMode="normal"
android:footerDividersEnabled="false"
android:headerDividersEnabled="false"
android:gravity="bottom"
>
</ListView>
Адаптер Listveiw
private class EfficientAdapter extends BaseAdapter {
private LayoutInflater mInflater;
public EfficientAdapter(Context context) {
mInflater = LayoutInflater.from(context);
}
public int getCount() {
return comment_list.size();
}
public Object getItem(int position) {
return position;
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.listview, null);
holder = new ViewHolder();
holder.text = (TextView) convertView
.findViewById(R.id.list_view_text_view);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.text.setText(comment_list.get(position).toString());
return convertView;
}
class ViewHolder {
TextView text;
}
}
Это код, который я использую, чтобы попытаться установить фон в моей основной программе.
list_view_comments.setBackgroundResource(R.color.color_con);
list_view_comments.setDrawingCacheBackgroundColor(R.color.color_con);
list_view_comments.setBackgroundColor(R.color.color_con);
list_view_comments.setCacheColorHint(R.color.color_con);