Как настроить ширину PopupMenuStyle в панели действий - PullRequest
0 голосов
/ 17 февраля 2019

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

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.activity_main_tabs, menu);

    Drawable drawableLangue = menu.findItem(R.id.langues).getIcon();
    DrawableCompat.setTint(drawableLangue, ContextCompat.getColor(this, R.color.colorAccent));

    Drawable drawableAbout = menu.findItem(R.id.about).getIcon();
    DrawableCompat.setTint(drawableAbout, ContextCompat.getColor(this, R.color.colorAccent));

    return true;
}

вот меню параметров:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainTabsActivity">
<item
    android:id="@+id/langues"
    android:icon="@drawable/baseline_language_black_18"
    android:title="@string/languages"
    app:showAsAction="always|withText"
    android:visible="true">

    <menu xmlns:android="http://schemas.android.com/apk/res/android">
        <item
            android:id="@+id/fr"
            android:title="Français"/>

        <item
            android:id="@+id/ar"
            android:title="العربية"/>
    </menu>
</item>

<item
    android:id="@+id/about"
    android:icon="@drawable/baseline_info_black_18"
    android:title="@string/credit_title"
    app:showAsAction="always|withText"
    android:visible="true">

    <menu xmlns:android="http://schemas.android.com/apk/res/android">
        <item
            android:id="@+id/team"
            android:title="@string/credit_team"/>
    </menu>
</item>

в style.xml мне удалось изменить цвет фона всплывающего меню следующим образом:

<style name="PopupMenuStyle" parent="Theme.AppCompat.Light">
    <item name="android:background">@color/colorPrimary</item>
</style>

я не могу найти способ изменить width всплывающего меню (чтобы соответствовать длине текста), потому что осталось некоторое свободное место.

...