为什么我的工具栏没有显示溢出图标?

问题描述 投票:0回答:1

我的主要活动使用无操作栏主题。我改用工具栏。现在我设计了一个菜单文件,用于填充工具栏右侧的图标。菜单文件的标记如下所示

<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">
<item 
app:icon="@drawable/undo24" android:id="@+id/action_undo" android:orderInCategory="100" app:showAsAction="always"
/>
<item 
app:icon="@drawable/redo24" android:id="@+id/action_undo" android:orderInCategory="100" app:showAsAction="always"/>

</menu>

我重写了 oncreateoptionsmenu 方法并使用此代码在工具栏上绘制图标

public override bool OnCreateOptionsMenu(IMenu menu) {
  
 MenuInflater.Inflate(Resource.Menu.tool_menu,menu);
 return true;
} 

我可以看到项目已被绘制,因为我可以看到点击或触摸效果,但它们是不可见的。可绘制图标的矢量标记如下所示

重做.xml

<vector xmlns:android="http://schemas.android.com/apk/res/android" android:autoMirrored="true" android:height="24dp" android:tint="#FFFFFF" android:viewportHeight="24" android:viewportWidth="24" android:width="24dp">
<path android:fillColor="@android:color/white" android:pathData="M18.4,10.6C16.55,8.99 14.15,8 11.5,8c-4.65,0 -8.58,3.03 -9.96,7.22L3.9,16c1.05,-3.19 4.05,-5.5 7.6,-5.5 1.95,0 3.73,0.72 5.12,1.88L13,16h9V7l-3.6,3.6z"/>
</vector>

undo24.xml

<vector xmlns:android="http://schemas.android.com/apk/res/android" android:autoMirrored="true" android:height="24dp" android:tint="#FFFFFF" android:viewportHeight="24" android:viewportWidth="24" android:width="24dp">
<path android:fillColor="@android:color/white" android:pathData="M12.5,8c-2.65,0 -5.05,0.99 -6.9,2.6L2,7v9h9l-3.62,-3.62c1.39,-1.16 3.16,-1.88 5.12,-1.88 3.54,0 6.55,2.31 7.6,5.5l2.37,-0.78C21.08,11.03 17.15,8 12.5,8z"/>
</vector

为什么工具栏上的图标不可见?

java c# android xamarin
1个回答
0
投票

我在我这边做了测试,它在我这边有效。

您可以参考以下代码:

<?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">
      <item  android:icon="@drawable/undo" android:title="Done" android:id="@+id/action_do" android:orderInCategory="100"  android:showAsAction="always" />
      <item  android:icon="@drawable/redo" android:title="UnDo" android:id="@+id/action_undo" android:orderInCategory="100" android:showAsAction="always"/>

</menu>

注:

请为

android:showAsAction="always"
添加属性:
Item
,并为菜单的不同
Id
添加不同的
Item

© www.soinside.com 2019 - 2024. All rights reserved.