为什么IMvxSideBar上有时没有图像?

时间:2017-12-12 19:39:05

标签: image xamarin.ios mvvmcross hamburger-menu

我正在使用MvvmCross 4.4.0并面临这样的问题:在某些情况下,汉堡包图标和主页面标题不会出现在侧边菜单中。 (观看图片)在我的情况下,在显示menuViewModel几乎立即启动App后,它是不可见的。但是,当我在menuViewModel之前导航到其他ViewModel时,图标可见。此外,它导航到其他页面后显示回来。

MenuView的代码:

[MvxPanelPresentation(MvxPanelEnum.Left, MvxPanelHintType.ActivePanel, showPanel: false)]
public partial class MenuView : MvxViewController<MenuViewModel>, IMvxSidebarMenu
{
    public MenuView() : base("MenuView", null)
    {
    }

    public virtual bool HasShadowing => false;

    public UIImage MenuButtonImage => UIImage.FromBundle("HamburgerMenu");

....
}

从任何页面导航到此总是以同样的方式

  

ShowViewModel&LT; MenuViewModel&gt;();

有没有人有任何变通方法的建议?提前谢谢。

enter image description here

1 个答案:

答案 0 :(得分:0)

解决方法是隐藏和显示ViewWillAppear中的NavigationBar(也许是其他地方)View的方法,它是屏幕的主要部分(非侧边栏)。 我是这样做的:

 NavigationController.SetNavigationBarHidden(hidden: true, animated: false);
 NavigationController.SetNavigationBarHidden(hidden: false, animated: false);