在我的Android活动中,我尝试将菜单图标添加到工具栏中:
toolbar.inflateMenu(R.menu.toolbar_menu)
菜单是使用Android vector vector drawable定义的:
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/toolbar_menu"
android:icon="@drawable/menu"
android:title="Menu"
app:showAsAction="always"
/>
</menu>
drawable:
<!-- drawable/menu.xml -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="24dp"
android:width="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path android:fillColor="#000" android:pathData="M3,6H21V8H3V6M3,11H21V13H3V11M3,16H21V18H3V16Z" />
</vector>
但是在模拟器(左侧的Nexus 5X,右侧的Nexus 10)中,菜单图标没有像我预期的那样自动缩放:
这在API 21和API 26下发生。
我认为使用矢量drawables应该会导致自动缩放的图像,但它显然不会出现在这里。如何在不使用每个分辨率的光栅图像的情况下正确缩放此菜单?