Android: странный внешний вид панели действий после закрытия режима действий

Я обнаружил странную проблему при попытке реализовать ListView с режимом множественного выбора. Я использую CHOICE_MODE_MULTIPLE_MODAL для включения режима множественного выбора и MultiChoiceModeListener для предоставления меню режима действий и обработки событий. Вот мой код:

    ListView listView = (ListView) findViewById(R.id.list);
    ArrayAdapter<String> adapter = new ArrayAdapter<>(this, R.layout.item,
            new String[] {"111", "222", "333", "444", "555"});
    listView.setAdapter(adapter);

    listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
    listView.setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() {
        @Override
        public void onItemCheckedStateChanged(ActionMode actionMode, int i, long l, boolean b) {
        }

        @Override
        public boolean onCreateActionMode(ActionMode actionMode, Menu menu) {
            MenuInflater inflater = actionMode.getMenuInflater();
            inflater.inflate(R.menu.my_menu, menu); // my_menu is just stub empty menu
            return true;
        }

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

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

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

Он работает нормально, я могу выбирать элементы списка, и появляется режим действия: скриншот. Проблема в том, что когда я поворачиваю свое устройство, а затем закрываю режим действий, нажав кнопку «Назад», иногда (не каждый раз) панель действий становится уродливой, со странным светлым фоном: скриншот

Он воспроизводится на моем устройстве с Android 5.0. Код довольно прост, и я не думаю, что это ошибка в моем коде. Может быть, это внутренняя ошибка в системе Android? Кто-нибудь сталкивался с этой проблемой? Заранее спасибо!


person Victor Semenovich    schedule 13.09.2016    source источник
comment
То же самое. Вы нашли какое-нибудь решение?   -  person Nikolai    schedule 12.12.2018


Ответы (1)


Вы должны заставить ActionBar перерисовать себя. Проверьте мой ответ здесь:

https://stackoverflow.com/a/53997778/3185295

person Nikolai    schedule 03.01.2019