Android一次只允许在屏幕上使用一个导航页面

bat*_*aci 9 xamarin.android xamarin xamarin.forms

下面的两个实现有什么区别?

 public App()
    {
        // The root page of your application
        MainPage = new Views.MainPage();
    }   
 public App()
    {     
        MainPage = new NavigationPage(new MainPage());
    }
Run Code Online (Sandbox Code Playgroud)

如果我的主页继承MasterDetailPage,上面的第一个代码将工作但第二个将返回错误消息,告诉我"android一次只允许屏幕上的一个导航页面"当我调试我的Android应用程序时.

  public class MainPage : MasterDetailPage
    {

        MasterPage masterPage;
        public MainPage()
        {
            masterPage = new MasterPage();
            Master = masterPage;
            Detail = new NavigationPage(new AnotherPage());
Run Code Online (Sandbox Code Playgroud)

Ada*_*ley 9

我可能会对你提出的问题感到困惑,但如果你这样做的话

MainPage = new NavigationPage(new MainPage());
Run Code Online (Sandbox Code Playgroud)

你的MainPage是

public class MainPage : MasterDetailPage
{

    MasterPage masterPage;
    public MainPage()
    {
        masterPage = new MasterPage();
        Master = masterPage;
        Detail = new NavigationPage(new AnotherPage());
Run Code Online (Sandbox Code Playgroud)

然后你在做

NavigationPage> MasterDetailPage> NavigationPage

MasterDetail或Navigation应该是根,而不是彼此在一起.您不能在彼此之间有2个导航页面.