我有一个 ExpandableListView,我想在展开项目时使用不同的视图进行自定义。问题是我分配给 state_expanded 属性的图像从未显示。我已经尝试了状态的几乎所有其他属性,但唯一能做任何事情的是 state_pressed ,它只是在按下状态时短暂显示不同的图像。如何让我的 list_item_expanded drawable 在项目展开时保持显示?任何想法或帮助将不胜感激。
这是我的选择器。
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/list_item_expanded" android:state_expanded="true"></item>
<item android:drawable="@drawable/list_item"></item>
</selector>
这是我设置 ExpandableListView 样式的地方
<style name="customExpandableList" parent="@android:style/Widget.ExpandableListView">
<item name="android:groupIndicator">@null</item>
<item name="android:dividerHeight">5dp</item>
<item name="android:divider">@android:color/transparent</item>
<item name="android:listSelector">@android:color/transparent</item>
<item name="android:cacheColorHint">@android:color/transparent</item>
<item name="android:childDivider">@android:color/transparent</item>
</style>
我将选择器设置为适配器中的可绘制对象,如下所示:
@Override
public View getGroupView(int groupPosition, boolean isExpanded, View view, ViewGroup parent) {
if (view == null) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.trans_sum_row, null);
}
view.setBackgroundDrawable(context.getResources().getDrawable(R.drawable.list_item_selector));
}