gpt4 book ai didi

java - ExpandableListView 对于列表中的最后一项表现异常

转载 作者:行者123 更新时间:2023-11-30 10:12:57 26 4
gpt4 key购买 nike

我在 Android 抽屉导航中使用 ExpandableListsViews 而不是菜单。而 OnExpandlistner 我正在改变背景颜色。前两个项目表现正常,它们的背景颜色发生了变化。但最后一项是相反的。我已经尝试了一切,我已经调试了代码。在最后一项上,设置的背景颜色代码是runnig,但没有改变。下次我单击该项目时,它会更改颜色。如果我单击其他列表项之后。最后一项颜色也会改变。

        simpleExpandableListView.setOnGroupCollapseListener(new ExpandableListView.OnGroupCollapseListener() {
@Override
public void onGroupCollapse(int i) {
if(i == 0){
View view = getGroupView(simpleExpandableListView,0);
view.setBackgroundColor(Color.parseColor("#282828"));
}
if(i == 1){
View view = getGroupView(simpleExpandableListView,1);
view.setBackgroundColor(Color.parseColor("#282828"));
}
if(i == 2){
View view = getGroupView(simpleExpandableListView,2);
view.setBackgroundColor(Color.parseColor("#282828"));
}
}
});

simpleExpandableListView.setOnGroupExpandListener(new ExpandableListView.OnGroupExpandListener() {
@Override
public void onGroupExpand(int i) {
if(i == 0){
View view = getGroupView(simpleExpandableListView,0);
view.setBackgroundColor(Color.parseColor("#616262"));
}
if(i == 1){
View view = getGroupView(simpleExpandableListView,1);
view.setBackgroundColor(Color.parseColor("#616262"));
}
if(i == 2){
View view = getGroupView(simpleExpandableListView,2);
view.setBackgroundColor(Color.parseColor("#616262"));
}
}
});

我什至获得了每个项目的受人尊敬的意见。但仍然。这是我尝试过的另一个逻辑。

   simpleExpandableListView.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
//get the group header
GroupInfo headerInfo = deptList.get(groupPosition);
Log.d("GroupPosition", "onGroupClick: " + groupPosition);
if(parent.isGroupExpanded(groupPosition)){
v.setBackgroundColor(getResources().getColor(R.color.colorMenuBackground));
}
if(!parent.isGroupExpanded(groupPosition)){
v.setBackgroundColor(getResources().getColor(R.color.colorPrimary));
}
//display it or do something with it
/*Toast.makeText(getBaseContext(), " Header is :: " + headerInfo.getName(),
Toast.LENGTH_LONG).show();*/

return false;
}
});

但仍然得到相同的结果。如果有人能指出我正确的方向,并告诉我我做错了什么,将不胜感激。谢谢你

最佳答案

问题解决了!这都可以通过使用 expandableListView xml 属性来解决。 "android:listSelector="任何你想要的颜色""

关于java - ExpandableListView 对于列表中的最后一项表现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51597432/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com