簡體   English   中英

獲取項目LongClicked在ListView中的位置

[英]Get position of the item LongClicked in a ListView

我有一個ListView顯示自定義視圖(每個項目3個TextViews ); 我剛剛實現了這樣的上下文菜單:

// in onCreateView
ListView list = (ListView) view.findViewById(R.id.list);

registerForContextMenu(list);

@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
    super.onCreateContextMenu(menu, v, menuInfo);

    if (v.getId() == R.id.list) {
        MenuInflater inflater = getActivity().getMenuInflater();
        inflater.inflate(R.menu.todo_context_menu, menu);
    }
}

@Override
public boolean onContextItemSelected(MenuItem item) {
    switch (item.getItemId()) {
        case R.id.edit:
            // your first action code
            return true;
        case R.id.delete:
            // your second action code
            return true;
        default:
            return super.onContextItemSelected(item);
    }
}

我想知道長按一下哪個項(它在ListView位置是理想的)以便編輯或刪除正確的項。

如何實現?

@Override
public boolean onContextItemSelected(MenuItem item) {

   AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
   int index = info.position;

  switch (item.getItemId()) {
    case R.id.edit:
        // your first action code
        return true;
    case R.id.delete:
        // your second action code
        return true;
    default:
        return super.onContextItemSelected(item);
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM