【问题标题】:Hide Nav Bar on Main Page - Xamarin Forms隐藏主页上的导航栏 - Xamarin 表单
【发布时间】:2017-08-30 09:13:29
【问题描述】:

我想在我的应用程序的主页面上隐藏导航栏。但想让它在第二页上显示标题和后退按钮。这是我做的,但它也出现在主页上。

在 App.xaml.cs 中,我使用了这个:

 MainPage = new NavigationPage(new MainPage());

在相应的登录页面中,我创建了这个:

private async void LoginPage_Clicked(object sender, EventArgs e)
    {
        await Navigation.PushAsync(new LoginPage());
    }

当用户点击时,它会进入第二个页面(登录页面)。

另外,如何更改导航栏的颜色?

【问题讨论】:

    标签: c# visual-studio xamarin xamarin.ios xamarin.forms


    【解决方案1】:

    作为奖励,您还可以通过 xaml 将其删除:

    <ContentPage ...namespaces... NavigationPage.HasNavigationBar="False">...
    

    【讨论】:

    • 并且根据自己的需要,甚至可以使用绑定来动态隐藏或显示导航栏。
    【解决方案2】:

    在 App.cs 中使用

    MainPage = new YourProjectNamespace.MainPage();
    

    这将在您的第一页上隐藏您的导航栏

    【讨论】:

    • 如果你显示的第一页没有包裹导航页,你将如何在第二页显示导航栏?
    【解决方案3】:

    在要隐藏导航栏的页面的构造函数中,使用如下代码。

    Xamarin.Forms.NavigationPage.SetHasNavigationBar(this, false);
    

    要更改 NavigationBar 的颜色,您可以这样做。

    new NavigationPage(new MainPage())
    {
        BarBackgroundColor = Color.FromHex("#000000"),
        BarTextColor = Color.White
    };
    

    【讨论】:

    • 像 Android 一样,我可以从文件中更改颜色吗?
    • 在 Android 中,您可以通过您的主题,使用 @color/theme_color 并根据需要进行更改
    • 您可以将样式添加到资源字典以设置样式组件。看看Xamarin Global Styles如何正确做跨平台样式
    猜你喜欢
    • 2017-04-13
    • 1970-01-01
    • 1970-01-01
    • 2021-10-20
    • 2017-07-23
    • 2018-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多