Заголовок в ActionMode не отображается

#android #kotlin #android-actionmode

#Android #kotlin #android-actionmode

Вопрос:

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

 actionMode?.title = text
  

Проблема не в том, что ActionMode не инициализируется, потому что я проверил это (если закрыть ActionMode и открыть его снова, он отлично работает). Не отображается только первый заголовок.
Мой ActionMode настроен на наложение панели инструментов в теме моего приложения следующим образом:

 <item name="windowActionModeOverlay">true</item>
  

Если я установлю для него значение false, все будет работать так, как должно, показывая заголовок, когда он должен быть.
Но мне действительно нужно, чтобы этот ActionMode перекрывал панель инструментов.
У кого-нибудь была подобная проблема?

Кроме того, макет состоит из CoordinatorLayout , внутри которого есть RecyclerView . Если я завершу RecyclerView , NestedScrollView проблема, похоже, исчезнет.

Ответ №1:

Я создал временное исправление для этого, оно не решает проблему, но оно работает, так что оно вроде как работает.

 override fun onCreateActionMode(mode: ActionMode?, menu: Menu?): Boolean {
    mode?.menuInflater?.inflate(R.menu.action_menu, menu)
    mode?.title = "--" //temporary fix
    return true
}
  

Установка заголовка до того, как я установлю фактический, похоже, решает проблему. Это не сработает, если строка короче двух символов.

Ответ №2:

Недавно я также использовал ActionMode с RecycleView, я ссылался на эту статью

https://medium.com/over-engineering/using-androids-actionmode-e903181f2ee3

К ВАШЕМУ сведению, http://prntscr.com/vr51b7