【问题标题】:Why OnGroupClick redraws the ExpandableList为什么 OnGroupClick 重绘 ExpandableList
【发布时间】:2013-01-23 12:07:07
【问题描述】:

我是 Android 新手。

我有一个ExpandableListView,在那里我设法突出显示(持久)选定的项目/子项。但是当我单击/触摸该组时,突出显示的项目消失了,似乎列表已被重绘。在onGroupClick 中,我尝试使突出显示的项目保持突出显示,但即​​便如此它也会重绘列表。

    @Override
public boolean onGroupClick(ExpandableListView parent, View v,
        int groupPosition, long id) {
    // TODO keepSelectedModuleHighlited. Right now its not working.
    if (parent.isGroupExpanded(groupPosition)) {
        parent.collapseGroup(groupPosition);
    } else {
        parent.expandGroup(groupPosition);
    }

    keepSelectedModuleHighlited();

    return true;
}

And 方法:keepSelectedModuleHighlited

    private void keepSelectedModuleHighlited() {
    if (lastSelectedView != null && lastSelectedDrawble != null) {
        lastSelectedView.setBackgroundDrawable(this.getResources()
                .getDrawable(R.drawable.module_selected));
    }

}

如何在重绘列表之后放置我的方法?有什么想法吗?

【问题讨论】:

    标签: android expandablelistview selecteditem


    【解决方案1】:

    由于Android“重绘列表”时,它会在你的ExpandableListAdapter上调用getChildView(),你需要将你的高亮代码放在getChildView()中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-11
      • 2015-01-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多