Xamarin.Forms 2.2更新后汉堡菜单图标消失了

9

我将我的Xamarin.Forms项目从Xamarin.Forms 2.0升级到Xamarin.Forms 2.2后,汉堡图标消失了。

我已经尝试搜索谷歌,但没有发现类似的问题。有人遇到过相同的问题吗?

3个回答

7
如果默认图标消失了,你可以为主页面设置自己的图标,例如:
public class MasterPage : MasterDetailPage
{
    FlyOutMenuPage menu = new FlyOutMenuPage ();
    Master = menu;
}

public class FlyOutMenuPage : ContentPage
{
    Icon = "menu.png";
} 

menu.png是一张资源图片,你可以从这里获取很多图标:

https://www.iconfinder.com/search/?q=hamburger&price=free


谢谢你的提示。我在应用程序中有一些图片,它们已经能够在按钮上使用了。我将其中一个设置为主要详细页的图标,但“主菜单”按钮(汉堡包)仍然不可用。这可能是一个错误,在Win10 UWP应用程序中才会出现吗? - The Chris
我想补充一下,有很多人反对汉堡菜单作为降低用户参与度的设计模式。因此,请考虑其他导航模式(例如工具栏、选项卡或菜单链接)。 - Thomas Hagström
建议使用32x32的图标。您可以在此处找到一个:https://www.freeicons.io/office-and-workstation-icons-5/menu-icon-18931# - David Jesus

0

我的问题出现在Android上,所以我不得不编写一个自定义渲染器来应用颜色并设置透明度以再次显示它:

[assembly: ExportRenderer(typeof(CustomNavigationPage), typeof(CustomNavigationRenderer))]

namespace App.Droid
{
    public class CustomNavigationRenderer : NavigationPageRenderer
    {

        public CustomNavigationRenderer(Context context) : base(context)
        {
        }

        protected override void OnLayout(bool changed, int l, int t, int r, int b)
        {
            base.OnLayout(changed, l, t, r, b);
            var toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
            for (var i = 0; i < toolbar.ChildCount; i++)
            {
                var imageButton = toolbar.GetChildAt(i) as ImageButton;

                var hamburger = imageButton?.Drawable as DrawerArrowDrawable;
                if (hamburger == null)
                    continue;

                hamburger.Color = Context.GetColor(Resource.Color.primary_text_default_material_light);
                hamburger.Alpha = 255;
            }


        }
    }
}

0
请知道汉堡菜单在iOS构建中不会显示。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接