嘿,是否可以更改ExpandableListView中指定行的背景?我想要的是:第一排蓝色,第二红色,第三蓝色,第四红色.....谢谢
答案 0 :(得分:1)
是的,这是可能的,您必须为可扩展列表视图使用自定义适配器。
@Override
public View getChildView(int groupPosition, int childPosition, boolean isLastChild,
View convertView, ViewGroup parent) {
//......
//...... Your code for row view
//.....
//Now write here code for set colors for rows
if(childPosition % 2 == 0) {
convertView.setBackgroundColor("#0000FF"); // use this when you want to use hexa value of colors
} else {
convertView.setBackgroundColor("#FF0000"); // use this when you want to use hexa value of colors
}
//setBackgroundResource(android.R.color.transparent); // use this for predefined colors at place of setBackground
return convertView;
}
阅读this文章,此处的示例和源代码也可用。
答案 1 :(得分:0)
当然。您只需在创建或重新创建视图时手动设置视图背景。在方法
中的适配器中执行此操作getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent)
基于小组和儿童位置
答案 2 :(得分:0)
您可能需要查看this thread: Android ExpandableListView 有一个working sample具有您想要的功能(根据它们保存的数据对行进行着色)。