0

我有一个 ListView,其中每个项目都包含两个 TextView。我想要的是在上下文菜单打开时更改 TextViews 的背景颜色,然后在上下文菜单关闭时将颜色更改回默认颜色。

我可以在上下文菜单打开时更改颜色,但在它关闭时不能更改颜色,而且我在谷歌上搜索这个并没有多大成功。我尝试使用 onContextMenuClosed 但无法获得对所选列表项的引用。

我的代码:

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
    @Override
    public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
        menu.setHeaderTitle("Actions");
        MenuItem delete = menu.add(Menu.NONE, 0, 0, "Delete");
        AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
        changeCol(info.targetView);
    }
});
4

1 回答 1

0

我最终在事件中设置了一个全局变量,然后在onItemLongClickListener事件中ListView使用该变量onContextMenuClosed

这对我来说效果很好。

于 2013-08-03T23:38:13.770 回答