我正在尝试使用带有TextView
的{{1}}在我的ListView
上为SimpleCursorAdapter
添加背景颜色,但它不起作用:
listrow.xml:
ViewBinder
我调用<TextView
android:id="@+id/catcolor"
android:layout_width="4dp"
android:layout_height="match_parent"
android:layout_margin="4dp"
android:background="#FF0099FF" />
<LinearLayout
android:paddingTop="4dp"
android:paddingRight="4dp"
android:paddingLeft="4dp"
android:paddingBottom="2dp">
<TextView
android:id="@+id/title"
android:text="{title}"
android:textSize="@dimen/text_size_medium"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="10"
android:textStyle="bold" />
</LinearLayout>
的活动(类ViewBinder
扩展 TextActivity
)
ListActivity
我做错了什么?
答案 0 :(得分:0)
在setViewValue()
中,一旦为指定视图设置了所需的值,就必须返回true。有关详细信息,请查看documentation。以下是我为您的代码考虑的内容:
public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
int viewId = view.getId();
switch(viewId) {
case R.id.catcolor:
ImageView catcolor = (ImageView) view;
int catColor = cursor.getInt(columnIndex);
switch(catColor) {
case 0:
catcolor.setBackgroundColor(R.color.catcolor1);
return true;
break;
case 1:
catcolor.setBackgroundColor(R.color.catcolor2);
return true;
break;
case 2:
catcolor.setBackgroundColor(R.color.catcolor3);
return true;
break;
}
break;
}
return false;
}