代码之家  ›  专栏  ›  技术社区  ›  Sheehan Alam

如何从上下文菜单中删除数组项?

  •  0
  • Sheehan Alam  · 技术社区  · 15 年前

    我有一个列表视图,当用户长时间单击时,我想从上下文菜单中选择“删除”来删除行项目。

    @Override  
        public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {  
    
            super.onCreateContextMenu(menu, v, menuInfo);  
            menu.setHeaderTitle("Selection Options");  
            menu.add(0, v.getId(), 0, "Remove Symbol");  
        }  
    
        @Override  
        public boolean onContextItemSelected(MenuItem item) {  
            if(item.getTitle()=="Remove Symbol"){
                Toast.makeText(this, "Remove clicked!", Toast.LENGTH_SHORT).show();
            }  
            else {
                return false;
            }  
    
            return true;  
        }  
    

    如何获取对单击的行号的引用,以便从数组中删除该索引?

    1 回复  |  直到 15 年前
        1
  •  0
  •   Austyn Mahoney Janak    15 年前

    在你 onContextItemSelected 回调,可以使用此代码获取项的ID。

    @Override
      public boolean onContextItemSelected(MenuItem item) {
         AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
         removeItemFromListById(info.id);
      }
    

    来源:

    Creating Menus | Android Developers