gpt4 book ai didi

c# - 如何正确使用 NavigationPage 并将根页面作为 MainPage?

转载 作者:太空宇宙 更新时间:2023-11-03 23:18:10 26 4
gpt4 key购买 nike

我应该如何正确使用根页面,以便我可以使用正确的导航栏导航/推送到其他页面。

现在看起来像这样:

MainPage = new RootPage ();

还有我的根页面:

public RootPage ()
{

var theMenu = new MenuPage (this);
theMenu.Title = "::";

Master = theMenu;

NavigationPage page = new NavigationPage(new StartPage ());
Detail = page;
}

如果是这样,当我尝试导航到新页面时会出现错误:

async void contactClick (object s, EventArgs e)
{
await Navigation.PushAsync (new ContactPage());
}

错误:“iOS 不支持 PushAsync,请使用 NavigationPage。”

如果我改为:

MainPage = new NavigationPage (new RootPage ());

我有两个导航栏。我通过使用...解决了它:

NavigationPage.SetHasNavigationBar (this, false);

...在我的 RootPage 上,但是当我导航到新页面时,它给它一个奇怪的动画,而且它在 android 上崩溃。您有什么想法可以解决这个问题吗?

最佳答案

据我了解,您有 MasterDetailPage 并且想要在详细信息页面上执行导航。

如果是这样,您应该通过 Detail.Navigation.Push/Popasync(..) 推送/弹出页面(您的详细信息页面已经是 NavigationPage)。


async void contactClick (object s, EventArgs e)
{
await Navigation.PushAsync (new ContactPage());
}

如果此方法在 MenuPage 或 RootPage 中,那么您得到了

Error: "PushAsync is not supported globally on iOS, please use a NavigationPage."

因为这个页面不是 NavigationPages。

编辑:如果您想在导航后隐藏菜单,请将 RootPage.IsPresented 属性设置为 false。

关于c# - 如何正确使用 NavigationPage 并将根页面作为 MainPage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36555293/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com