如何在 Xamarin 中更改 MasterMainPage 的 NavBar 颜色

How to change NavBar colour of MasterMainPage in Xamarin

我正在构建 Xamarin 跨平台应用程序!

问题是我想更改 MainPageNavigationBar 的颜色,其中 MasterPage 带有抽屉菜单。

我尝试使用此代码更改颜色,但我不想在 NavBar 上出现一个额外的栏。

App.xaml.cs:

  MainPage = new NavigationPage(new MainPage())

        {
            BarBackgroundColor = Color.FromHex("#00477f"),
            BarTextColor = Color.White,
        };

屏幕截图: 这些屏幕截图显示了我面临的问题!

NavigationPage 具有您可以设置的 BarBackgroundColor 属性。

Referred this

var nav = new NavigationPage(new ContentPage { Title = "Page" } );
nav.BarBackgroundColor = Color.Blue;

在这里,当您分配 App.xamlMainPageNavigationPage 时,它显示它自己的 NavigationBar。在引擎盖下,您的 MasterDetailPage 还显示 NavigationBar。因此,您正在查看两个 NavigationBar。

转到您的 MainPage.xaml.cs 后端页面并在构造函数中写入以下行:

NavigationPage.SetHasNavigationBar(this, false);

因此,您的 MainPage.xaml.cs 应该如下所示:

public MainPage()
{
    NavigationPage.SetHasNavigationBar(this, false);
    InitializeComponent();
    ......
}

这将隐藏 MasterDetailPage 的 NavigationBar。