xamarin.forms - 如何在 Xamarin 中更改 MasterMainPage 的导航栏颜色

标签 xamarin.forms cross-platform navbar background-color

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

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

我尝试使用此代码更改颜色,但导航栏上出现了一个额外的栏,但我不想这样做。

App.xaml.cs:

  MainPage = new NavigationPage(new MainPage())

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

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

/image/fbXie.png

/image/vuA1A.png

最佳答案

在这里,当您分配App.xamlMainPage(一个NavigationPage)时,它会显示它自己的NavigationBar。在幕后,您的 MasterDetailPage 还显示了导航栏。因此,您正在查看两个导航栏。

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

NavigationPage.SetHasNavigationBar(this, false);

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

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

这将隐藏 MasterDetailPage 的导航栏。

关于xamarin.forms - 如何在 Xamarin 中更改 MasterMainPage 的导航栏颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55454645/

相关文章:

c - 使用 fseek 保留空间安全吗?

android - 标准C++库的跨平台程度如何?

html - 如何左右拉动 <ul> 标签 - Bootstrap

CSS。谁能告诉我这段代码中的函数?我找不到

html - 如何在 react 中将此下拉菜单组件对齐在我的导航栏上特定位置的下方?

ios - 启动 StartUpdatingLocation () 后,运行另一个方法 - 每次更新位置

xamarin.forms - 如何使用跨媒体多重拍照

c++ - 具有插件、dll 和第 3 方工具的大型 C++ 项目的结构

android - Xamarin Forms 将 WebView 内容获取为字符串

Xamarin 表单时间选择器 24 小时