listview适配器的上下文菜单

时间:2014-01-14 17:23:28

标签: android

我不完全确定这是可能的,但我有几个使用listview适配器的活动。我想在listview项目上实现一个上下文菜单,我可以使用

public View getView(int position, View convertView, ViewGroup parent) {
    View vi = convertView;
    vi.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
        @Override
        public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
            menu.setHeaderTitle(sf.checkBusinessTitle(businessList.getBusinessName()));
            ....rest of context menu creation code...
        }
}

如何从适配器创建onContextItemSelected?

编辑:我收到错误“MyAdapter类型的onContextItemSelected方法(MenuItem)必须覆盖或实现超类型方法”如果我将以下内容添加到适配器:

@Override
public boolean onContextItemSelected(MenuItem item){
}

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

ArrayAdapter实施之外的方式完全相同。在getView()方法中,只需设置:

your_context.registerForContextMenu(convertView);    // Supposing convertView is your View

并在onContextItemSelected中定义Activity覆盖方法,而不是ArrayAdapter扩展名。