使用Mvvmcross隐藏Xamarin项目中的导航栏

Cra*_*ray 3 xamarin.ios mvvmcross xamarin

我正在使用mvvmcross并在后面的代码中实现视图的接口.我想隐藏导航栏但我还没有找到解决方案.

我试过了

NavigationController.SetNavigationBarHidden(true, false);
Run Code Online (Sandbox Code Playgroud)

NavigationController.NavigationBarHidden = true;
Run Code Online (Sandbox Code Playgroud)

在不同的方法(ViewDidAppear和ViewWillAppear)中,它们对UI没有影响.

也许有人可以给我一个暗示.:-)

@Edit:更多信息:

我的AppDelegate.cs

[Register("AppDelegate")]
public partial class AppDelegate : MvxApplicationDelegate
{
    UIWindow _window;

    public override bool FinishedLaunching(UIApplication app, NSDictionary options)
    {
        _window = new UIWindow(UIScreen.MainScreen.Bounds);

        var setup = new Setup(this, _window);
        setup.Initialize();

        var startup = Mvx.Resolve<IMvxAppStart>();
        startup.Start();

        _window.MakeKeyAndVisible();

        return true;
    }
}
Run Code Online (Sandbox Code Playgroud)

另外我使用的是继承自MvxViewController的BaseView类.

Cra*_*ray 6

好的,我自己找到了解决方案:

只需将以下代码粘贴到MvxViewController类的ViewDidLoad方法中(例如,许多mvvmcross教程中的FirstView.cs):

var navController = base.NavigationController;
navController.NavigationBarHidden = true;
Run Code Online (Sandbox Code Playgroud)