- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我目前正在阅读 An Introduction to Xamarin.Forms 的导航部分.应该使用 GetMainPage()
方法。但是应该如何使用呢?
应用委托(delegate)的默认实现如下所示:
应用委托(delegate):
public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate
{
public override bool FinishedLaunching (UIApplication app, NSDictionary options)
{
global::Xamarin.Forms.Forms.Init ();
LoadApplication (new App ());
return base.FinishedLaunching (app, options);
}
}
应用:
public class App : Application
{
public App ()
{
MainPage = GetMainPage ();
}
public static Page GetMainPage()
{
var mainNav = new NavigationPage(new ListExample());
return mainNav;
}
}
我设法使用 GetMainPage()
方法而不是获取
Application windows are expected to have a root view controller at the end of application launch
如果我查看(旧的?)示例(example1、example2),app delegate 是不同的,CreateViewController()
方法可用。就我而言不是!
将根页面加载到堆栈的正确方法是什么?
最佳答案
您不必使用 GetMainPage()
;这只是您创建的一种方法。 X.Forms 目前的工作方式是:它在 Xamarin.Forms Application
类中公开一个 MainPage
属性。您将其设置为 Page
的实例。如何创建该页面取决于您。您可以使用
this.MainPage = new ContentPage { Content = ... }
或者您每页创建一个文件(恕我直言,这对于可维护性来说是最好的):
this.MainPage = new MyLoginPage();
或者您使用创建页面的辅助方法:
this.MainPage = this.GetMainPage();
主页是表单应用程序的第一页。您可以将 MainPage
属性设置为不同的值以显示另一个页面。
早期版本的表单使用了不同的方法,并且尚未更新所有示例。现在所有平台只需要调用 Forms Init()
方法和调用 LoadApplication()
而不是创建 View Controller 、事件或页面 (WP8) .
关于c# - Xamarin.Forms:使用 GetMainPage(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28718391/
我目前正在阅读 An Introduction to Xamarin.Forms 的导航部分.应该使用 GetMainPage() 方法。但是应该如何使用呢? 应用委托(delegate)的默认实现如
我是一名优秀的程序员,十分优秀!