请帮我解决这个问题。当我的ExpandableListView中的一个组被展开时,我想要这个绿色边框:
有什么方法可以轻松地做到这一点吗?
修改: 我试过阿巴斯的回答,但它只包括父视图,而不是整个组。
答案 0 :(得分:0)
在可扩展适配器中添加以下行:
public View getGroupView(int groupPosition, boolean isExpanded,View convertView, ViewGroup parent) {
// Your header layout id
RelativeLayout rl_header = (RelativeLayout)convertView.findViewById(R.id.rl_header);
if(isExpanded)
{
rl_header.setBackground(_context.getResources().getDrawable(R.drawable.header_background_black));
}
else
{
rl_header.setBackgroundResource(R.drawable.header_background);
}
return convertView;
}
答案 1 :(得分:0)
将选择器设置为父项(Carpentary and Woodworks等)的背景。
在 drawable 文件夹中添加名为 item_selector.xml 的新背景文件。
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<shape android:shape="rectangle">
<stroke android:color="@color/green" android:width="1dp"/>
</shape>
</item>
</selector>
在xml
代码中为您的查看项设置背景。我只能在这里猜测,因为你没有提供任何代码。
<LinearLayout
android:background="@drawable/item_selector">
<TextView></TextView>
<ImageView></ImageView>
</LinearLayout
最后当您展开视图时,即onClick
expandableView.setSelected(true);
当选择其他视图时,不要忘记更改选择状态。