如何在操作栏中调整PopupMenuStyle的宽度

时间:2019-02-17 15:55:55

标签: android android-actionbar android-menu android-optionsmenu

我想更改操作栏中的选项菜单中显示的弹出菜单的显示。

@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 中,我设法更改了弹出菜单的backgtound颜色:

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

我找不到改变弹出菜单的宽度的方法(以适应文本长度),因为还剩下一些空白。

0 个答案:

没有答案