我正在尝试使用我已创建的可展开列表视图,并更改组列表中某个项目的背景颜色。我只想更改主列表中条目的颜色,而不是其下拉子项,也就是您单击以展开或隐藏其他部分的部分。我认为getGroupView会这样做,但我无法弄清楚如何使这项工作。如果这是正确的使用方法,有人可以解释如何使用它吗?如果有更好的方法,它是什么?
[编辑]我玩了一些,并想出了如何使用getGroupView,但我仍然有问题。我对我的理解所做的只是改变单个条目的颜色,而是改变它们。这是代码:
View listViewRow = findViewById(R.layout.menu_item);
listViewRow = myNewAdapter.getGroupView(2, false, listViewRow, expandView);
listViewRow.setBackgroundColor(Color.RED);
其中menu_item是我用于可扩展列表中的组的布局文件的名称,expandView是expandableListView。
答案 0 :(得分:0)
在扩展的BaseExpandableListAdapter类
中尝试使用它public View getGroupView(int groupPosition, boolean isExpanded,
View convertView, ViewGroup parent) {
if (convertView == null) {
LayoutInflater inflater = (LayoutInflater) myContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.group_row, null);
}
TextView tvGroupName = (TextView) convertView.findViewById(R.id.tvGroupName);
tvGroupName.setText(list.get(groupPosition).getYear() +" COLLECTION");
return convertView;
}
OR refrer this
答案 1 :(得分:0)
如果您想更改headerlist.xml中标题列表更改的颜色
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="8dp"
android:orientation="vertical"
android:background="@color/colorRed">
</LinearLayout>
- 如果您想更改childlist.xml中的子列表更改颜色
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="55dip"
android:layout_marginLeft="@dimen/_15dp"
</RelativeLayout>
答案 2 :(得分:-3)
将此行放在要显示其他颜色的位置:
- android:textColor="#a60704"
用任何颜色代替:
- #a60704