Как удалить элемент массива из контекстного меню? - PullRequest
0 голосов
/ 28 августа 2010

У меня есть ListView, и я хотел бы удалить элемент строки, когда пользователь долго нажимает на кнопку «Удалить» из контекстного меню.

@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 Ответ

0 голосов
/ 28 августа 2010

В вашем onContextItemSelected обратном вызове вы можете использовать этот код, чтобы получить идентификатор элемента.

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

* Источник: 1007 *

Создание меню | Разработчики Android

...