首页 > 解决方案 > 隐藏标题选项卡式导航页 Xamarin/FreshMvvm

问题描述

我正在努力隐藏我的 TabbedNavigation 页面的标题。

    public class NavigationContainerNames
{
    public const string AuthenticationContainer = "AuthenticationContainer";
    public const string MainContainer = "MainContainer";
}

public partial class App : Xamarin.Forms.Application
{
    public App()
    {
        InitializeComponent();

        var maintTabNav = new FreshTabbedFONavigationContainer("Aerogrow", NavigationContainerNames.MainContainer);
        maintTabNav.FirstTabbedPage.On<Xamarin.Forms.PlatformConfiguration.Android>().SetToolbarPlacement(ToolbarPlacement.Bottom);

        maintTabNav.AddTab<AerogrowPageModel>("Aerogrow", "");
        maintTabNav.AddTab<ControlsPageModel>("Controls", "");
        maintTabNav.AddTab<AccountPageModel>("Account", "");

        var LoginPage = FreshPageModelResolver.ResolvePageModel<RegisterPageModel>();
        var LoginNav = new FreshNavigationContainer(LoginPage, NavigationContainerNames.AuthenticationContainer);

        if (DataHelpers.DataBaseHelpers.GetCurrentUser() != null)
            MainPage = maintTabNav;
        else
            MainPage = LoginNav;
    }

我创建了我的 FreshTabbed 导航页面并在其中添加了子项,但是每个选项卡中都有一个我无法隐藏的通用标题(写有“Aerogrow”)。

如果有人知道如何隐藏它,请:)

注意:我试图通过 XAML 隐藏,但它不起作用

NavigationPage.HasNavigationBar="false"

这是标题

标签: c#xamarinmvvmxamarin.formsfreshmvvm

解决方案


通过以下方式隐藏第一个标签页的导航栏:

var maintTabNav = new FreshTabbedFONavigationContainer("Aerogrow", NavigationContainerNames.MainContainer);
maintTabNav.FirstTabbedPage.On<Xamarin.Forms.PlatformConfiguration.Android>().SetToolbarPlacement(ToolbarPlacement.Bottom);
NavigationPage.SetHasNavigationBar(maintTabNav.FirstTabbedPage, false);

如果您不想在每个页面上看到导航栏,请让您的页面继承自基本页面。然后在基本页面中设置属性:

public class BasePage : ContentPage
{
    public BasePage()
    {
        NavigationPage.SetHasNavigationBar(this, false);
    }
}

推荐阅读