Если вы хотите установить произвольный цвет, это, похоже, работает довольно хорошо для androidx
. Проверено на KitKat и Pie. Поместите это в ваш AppCompatActivity
:
@Override public View onCreateView(View parent, String name, Context context, AttributeSet attrs) {
if (name.equals("androidx.appcompat.view.menu.ListMenuItemView") &&
parent.getParent() instanceof FrameLayout) {
((View) parent.getParent()).setBackgroundColor(yourFancyColor);
}
return super.onCreateView(parent, name, context, attrs);
}
Устанавливает цвет android.widget.PopupWindow$PopupBackgroundView
, который, как вы уже догадались, рисует цвет фона. Там нет оверрейда, и вы можете использовать полупрозрачные цвета.