3

我正在尝试使用 MenuInflater 在 MonoDroid 中创建菜单,但我不断收到“找不到‘菜单’的架构信息

 <?xml version="1.0" encoding="utf-8"?>
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
   <item android:id="@+id/Search"
         android:title="@string/Search"
         android:icon="@drawable/ic_menu_search_holo_light"
         android:showAsAction="ifRoom"
        />
  <item android:id="@+id/AddProduct"
        android:title="@string/AddProduct"
        android:icon="@drawable/ic_menu_add"
        android:showAsAction="ifRoom"
        />
</menu>

Resource.designer.cs 不包含菜单,我尝试通过更改为 AndroidResource 来修复它,然后重新构建。

MenuInflater 代码。

    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);

        //Use UI created in Main.axml
        SetContentView(Resource.Layout.Main);

        var AddNewProduct = FindViewById<Button>(Resource.Id.AddNewProduct);
        AddNewProduct.Click += (sender, e) =>
        {
            StartActivity(typeof(AddProduct));
        };
    }
    public override void OnCreateOptionsMenu(IMenu menu)
    {
        MenuInflater menuInfalter = MenuInflater;
        menuInfalter.Inflate(Resource.Menu.MainMenu, menu);

        base.OnCreateOptionsMenu(menu);
    }

我知道有很多糟糕的代码。但我只需要知道如何将我的菜单 xml 添加到 Resource.designer.cs?

4

1 回答 1

0

通过 MonoDevelop 或 Visual Studio 添加您的菜单目录和任何资源文件。这样,它们将被添加到 csproj 并在构建过程中打包。仅将文件添加到目录不会将它们包含在构建中。

于 2012-12-17T23:51:12.903 回答