簡體   English   中英

如何刪除上下文操作欄(CAB)中的默認項目?

[英]How do I delete a default item in the contextual action bar (CAB)?

在Stack Overflow中已經有一些類似的問題,但是沒有一個選擇的解決方案對我有用。 這些鏈接似乎做出了不同的選擇,但是我嘗試了並且無法刪除默認情況下的第一個選項。

鏈接1 鏈接2 鏈接3 鏈接4

忽略項目圖標。 我需要刪除圈子中的項目。

例

private class ModoAccion implements ActionMode.Callback {

   private ArrayList<Integer> listaOpciones = new ArrayList<Integer>();

    @Override
    public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
        MenuInflater inflater = actionMode.getMenuInflater();
        menu.clear();
        inflater.inflate(R.menu.admin_detalle_emp_action_mode, menu);
        actionMode.invalidate();
        return true;
    }

    @Override
    public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {

        listaOpciones.add(R.id.accion_cancelar);
        listaOpciones.add(R.id.accion_guardar);

        for (int i = 0; i < menu.size(); i++) {
            MenuItem item = menu.getItem(i);
            if (!listaOpciones.contains(item.getItemId()))
                item.setVisible(false);
        }

        return false;
    }

    @Override
    public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) {
        switch (menuItem.getItemId()) {
            case R.id.accion_cancelar:
                actionMode.finish(); // Action picked, so close the CAB
                return true;
            default:
                return false;
        }
    }

    @Override
    public void onDestroyActionMode(ActionMode actionMode) {
        mActionMode = null;
    }
}

您實際上無法擺脫上下文操作欄的該區域。 但是,您可以通過設置應用樣式來更改其drawable(甚至可以隨意更改)。 只需覆蓋項目名稱android:actionModeCloseDrawable並插入您自己的drawable。

暫無
暫無

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

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