在ListView项上实现操作(添加/编辑/删除)

时间:2016-12-12 14:37:29

标签: java android listview menu menuitem

我是Android的新手,因为我只做了一些基本的应用程序,但我对Java更熟悉。我一直在开发一个应该提供 LoginActivity 的应用程序,它有两个生成一个 Pair 连接的属性( IP地址端口< / strong>)在屏幕顶部和所有已知连接的 ListView (之前偶尔使用过),在“连接”按钮下方。

Snippet

我的问题是,如果在ListView中的某个项目上稍微握一根手指,如何实施某些操作,例如添加/编辑/删除等。?如何为已知连接的修改/删除制作一些菜单?

这是我已经为ListView获得的代码:

@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);
    if (v.getId()==R.id.list_view) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menu_list, menu);
    }
}

@Override
public boolean onContextItemSelected(MenuItem item) {
    AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
    switch(item.getItemId()) {
        case R.id.edit:
            //implement here
            return true;
        case R.id.delete:
            //implement here
        default:
            return super.onContextItemSelected(item);
    }
}

1 个答案:

答案 0 :(得分:0)

也许您忘记了将您的上下文菜单注册到listview?

registerForContextMenu(lv);

修改

好的,现在我明白了。也许这会有所帮助:

 case R.id.delete:

     int index = info.position;
     listView.remove(index);
     listViewAdapter.notifyDataSetChanged();