2014-12-04 75 views
1

我在Xamarin.Forms中制作了一个测试应用程序,其中包含2页。主页面是我想放置登录页面的堆栈的开始。在PushModalAsync之后,登录页面不显示。Xamarin Forms页面未显示(iOS)

封闭我有一个测试项目的zip文件。

TestProject

public static async void StartLogin() 
    { 

     Button btnLogin = new Button(); 
     btnLogin.Text = "Login"; 
     btnLogin.BackgroundColor = Color.Green; 
     btnLogin.TextColor = Color.White; 

     ContentPage _loginPage = new ContentPage 
           { 
             Title = "Login", 
             Content = new StackLayout 
                { 
                  Spacing = 20, 
                  Padding = 50, 
                  VerticalOptions = LayoutOptions.Center, 
                  Children = 
                  { 

                    btnLogin, 
                  } 
                } 
           }; 
     _loginPage.BackgroundColor = Color.Black; 


     await Navigation.PushAsync(_loginPage); 

    } 
+0

StartLogin()在AppDelegate类的FinishedLaunching方法中调用。 – Odrai 2014-12-06 17:27:49

回答

2

尝试:

Device.BeginInvokeOnMainThread(() => Navigation.PushAsync(_loginPage);); 

因为导航是它必须在UI线程上执行的UI操作。如果你离开它,因为它没有在UI线程上执行,所以什么都不会发生。使用Device.BeginInvokeOnMainThread应该修复该问题

+0

不幸的是问题依然存在。 – Odrai 2014-12-04 12:36:09

相关问题