0

私は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;
}

メソッド: keepSelectedModuleHighlited

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

}

リストを再描画した直後にメソッドを配置するにはどうすればよいですか? 何か案が?

4

1 に答える 1

0

Android が「リストを再描画」すると、 が呼び出さgetChildView()れるExpandableListAdapterため、ハイライト コードを に配置する必要がありますgetChildView()

于 2013-01-23T13:40:10.977 に答える