首页 > 解决方案 > Xamarin Android - 工具栏问题

问题描述

我正在尝试添加带有菜单项和溢出按钮的工具栏,但按钮没有显示,我不知道为什么:

我的 axml 文件中包含的工具栏:

<include          
    android:id="@+id/toolbar"          
    layout="@layout/toolbar" />

将以下代码添加.csOnCreate()方法中:

var toolbar = FindViewById<Toolbar>(Resource.Id.toolbar);   
SetActionBar(toolbar);
ActionBar.Title = "My Toolbar";

在资源下添加菜单文件夹并创建menu_doc.xml文件并放置以下代码:

<?xml version="1.0" encoding="utf-8" ?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item        
         android:id="@+id/menu_edit"        
         android:icon="@drawable/ic_action_content_create"        
         android:showAsAction="ifRoom"        
         android:title="Edit" />
     <item        
         android:id="@+id/menu_save"             
         android:icon="@drawable/ic_action_content_save"        
         android:showAsAction="ifRoom"        
         android:title="Save" />
    <item
        android:id="@+id/menu_preferences"        
        android:showAsAction="never"        
        android:title="Preferences" />
</menu>    

在方法之后添加了以下两个功能OnCreate

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

public override bool OnOptionsItemSelected(IMenuItem item) {     
    Toast.MakeText(this, "Action selected: " + item.TitleFormatted,         
    ToastLength.Short).Show();     
    return base.OnOptionsItemSelected(item);
}

当我运行它时 - 有一个带有标题的工具栏,但它没有任何按钮。请帮忙。这是我所拥有的

标签: xamarin.android

解决方案


似乎有点晚了,但我通过添加应用命名空间解决了同样的问题:

xmlns:app="http://schemas.android.com/apk/res-auto"

并更改android:showAsActionapp:showAsAction


推荐阅读