更新到Xamarin.Forms 2.2后,Xamarin.Forms汉堡菜单图标消失了
在我将Xamarin.Forms 2.0从Xamarin.Forms 2.0更新到Xamarin.Forms 2.2之后,汉堡图标就消失了。
我用Google搜索没有运气,有没有人遇到同样的问题?
如果默认图标消失,您可以设置自己的主页面图标,例如:
public class MasterPage : MasterDetailPage { FlyOutMenuPage menu = new FlyOutMenuPage (); Master = menu; } public class FlyOutMenuPage : ContentPage { Icon = "menu.png"; }
而menu.png是一个资源图片,你可以从这里获得很多图标:
我的隐藏在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(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; } } } }