对 ListView 项执行操作 (add/edit/delete)

Implementing actions (add/edit/delete) on ListView items

我对 Android 有点陌生,因为我只做过一些基本的应用程序,但我对 Java 更熟悉。我一直在开发一个应用程序,它应该为 LoginActivity 提供两个属性,这些属性生成一个 Pair 连接(IP 地址port) 在屏幕的顶部和一个 ListView 所有已知的连接(以前偶尔使用过)就在按钮 "Connect".

Snippet

我的问题是,当手指在 ListView 中的某个项目上稍长一些时,如何实现 add/edit/delete 等 等操作?如何为已知连接的modification/deletion制作一些菜单?

这是我已经为 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);
    }
}

也许您忘记了将上下文菜单注册到列表视图?

registerForContextMenu(lv);

编辑

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

 case R.id.delete:

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