在我的应用中实现ExpandableListView时,我遇到了onPause和onResume的问题。我可能做错了(在这种情况下,请告诉我,我会尽力做到正确),因为我正在学习Android,主要是我在网上找到的东西。所以,为了进入它,我几乎让我的ExpandableListView按照我的意愿工作,但对于一个小bugbear。当我恢复活动时(例如在屏幕关闭后)我重新创建我的游标(这是恢复活动的最佳方式吗?我之前得到了游标错误...)然后以编程方式扩展当扩展时的组活动暂停了。现在,我想要做的就是更改扩展组的背景drawable,但我似乎无法找到获取视图的方法。有什么想法吗?
@SuppressWarnings("unchecked")
@Override
protected void onResume() {
super.onResume();
String searchText = ((QueryString)this.getApplicationContext()).getQuery();
if((searchText == null || searchText.length() < 1))
if(!hasQuery)
refreshCursor();
else
searchCursor(queryString);
else
searchCursor(searchText);
ArrayList<Integer> ToExpand = (ArrayList<Integer>) ExpandedList.clone();
ExpandedList.clear();
for(Integer i : ToExpand)
{
listContent.expandGroup(i);
listContent.getChildAt(i).setBackground(getResources().getDrawable(R.drawable.listview_style_selected)); //NOT WORKING
}
}
编辑:
我真正想要的是我刚用listContent.expandGroup(i)
以编程方式扩展的视图,以便我可以手动更改背景可绘制。遗憾的是,当您以编程方式展开组时,getGroupView
(通常更改背景)不会触发,因此背景可绘制保持不变。我怎样才能得到这个观点?