Внешний вид context menu
Воспроизвожу шаги по туториалу https://o7planning.org/ru/12615/android-contextmenu-tutorial Вернее буквальный копипаст. Разве что у меня API 23. Android Studio 4.0.1
И в результате вместо ожидаемого (как у них)
получается меню в "старом стиле"
Почему так? И что делать?
ps: Давать ссылку куда-то не очень хорошо, но я не вижу смысла копипастить типичный базовый код для создания меню. У меня нет проблем с созданием меню. У меня проблема его внешнего вида несмотря на androidX, appcompat, более высокий API level и так далее.
Ответы (1 шт):
В API 24 поменяли вид ContextMenu, а в туториале для скрина использовали эмулятор с API 24+, хотя подробной документации про смену ContextMenu не нашел. В том же Api 24 существует проблема с отображением
Так же в API 24 были добавлены ряд функций для класса View, например public boolean showContextMenu(float x, float y) которая и отвечает за вызов нового ContextMenu
Если важен одинаковый стиль то можно программно вызывать старый метод
button.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
button.showContextMenu();
return true;
}
});
тема мне показалась интересной, если еще что найду - дополню

