Android ListView MultiChoice скрыть CAB - PullRequest
0 голосов
/ 12 февраля 2020

Я реализовал просмотр списка в Android, интегрируя таким образом setMultiChoiceModeListener.

listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
    listView.setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() {


        @Override
        public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
            return true;
        }

        @Override
        public boolean onPrepareActionMode(ActionMode actionMode, Menu menu) {
            return true;
        }

        @Override
        public boolean onActionItemClicked(ActionMode actionMode, MenuItem menuItem) {
            return true;
        }

        @Override
        public void onDestroyActionMode(ActionMode actionMode) {
            nr = 0;
            num.setText(String.valueOf(nr));
            adapter.clearSelection();
        }

        @Override
        public void onItemCheckedStateChanged(ActionMode mode,
                                              int position, long id, boolean checked) {
            SharedPreferences prefs =
                    PreferenceManager.getDefaultSharedPreferences(MainActivity.this);

            SharedPreferences.Editor editor = prefs.edit();

            if (checked) {
                if(nr<8){
                    nr++;
                    adapter.setNewSelection(position, checked);
                    num.setText(String.valueOf(nr));

                    editor.putString(String.valueOf(nr), list_className.get(position));
                    editor.apply();
                }
            } else {
                editor.putString(String.valueOf(nr), "");
                editor.apply();

                nr--;

                num.setText(String.valueOf(nr));
                adapter.removeSelection(position);
            }
        }

    });

Таким образом, можно выбрать несколько элементов с помощью длинного щелчка по представлению списка. У меня вопрос, есть ли способ скрыть или не показать CAB после выбора элементов. Я не хочу, чтобы CAB появлялся во время выбора.

...