在Microsoft Build 2017中,我们分享了:在更多平台上使用Xamarin.Forms,并且比以往任何时候都更快。 今天,我想介绍一些令人兴奋的新功能,我们将添加到Xamarin.Forms,我们知道你会爱上!

Xamarin.Forms嵌入

您一直以来可以从Xamarin.Forms调用本机API,但现在我们允许您使用主要是本机应用程序的Xamarin.Forms。

无论您是在Xamarin.Forms上进行全面投入,还是只想在最受益的本地应用程序中使用它,我们将启用所有路径; 我们称之为Xamarin.Forms嵌入。 在XAML或C#中使用任何ContentPage,并将其直接嵌入到Xamarin.iOS,Xamarin.Android或UWP应用程序中。

所有现有的Xamarin.Forms UI现在已经在Xamarin.Forms应用程序之外扩展。
 
这是它的外观。 在您的非Xamarin.Forms应用程序中,只需使用该平台的预期参数初始化Forms,并使用方便的方法创建ContentPage的本机对象。 就这样,你可以手指掌握本地控件!

点击(此处)折叠或打开

  1. // Android
  2. Forms.Init(this, null);
  3. var androidFragment = new MyFormsPage().CreateFragment(this);
  4.  
  5. // iOS
  6. Forms.Init()
  7. var iosViewController = new MyFormsPage().CreateViewController();
  8.  
  9. // UWP
  10. Forms.Init(e);
  11. var uwpElement = new MyFormsPage().CreateFrameworkElement();


 

Xamarin.Forms的功能,如DependencyService,MessagingCenter和数据绑定系统,在这种情况下都可以使用。

达到更多的平台

Xamarin.Forms正在前往更多的平台! 准备在使用WPF的MacOS,Linux以及更多的Windows应用程序上运行。 今天我们已经,但是我们并没有停止,我们可以让您定位到每个桌面平台! 我们的团队正在为GTK#和WPF开发。

速度提升和增强

我们将Xamarin.Forms放在显微镜下,以确定关键目标,使您的应用加载速度更快,运行更快,特别是:

  • 控制渲染器:我们继续关于我们适当称之为快速渲染器的工作。 这些重构的渲染器避免创建许多中间对象并实现更好的性能。
  • 布局压缩:启用后,我们会在编译时优化布局,以提高渲染速度并最大限度地减少内存使用。
  • 绑定系统:我们正在引入一次绑定模式。
  • 灵活性:流行的Web布局系统来到Xamarin.Forms。 我们正在引入FlexLayout系统来构建自适应布局并实现Visual State Manager。
  • 造型:我们正在抛光经常要求的CSS启发式样式实现。 您可以像今天一样继续为您的应用程式设计风格,如果您是CSS风格的粉丝,现在将成为您强大的选择。

引入XAML标准

正如Microsoft Build 2017所宣布的,我们正在与的Windows部门进行合作,这是XAML作为资产共享的一种方式。 Xamarin.Forms将完全支持XAML标准,并带您到您需要的每个平台。

支持XAML Standard的框架将能够共享基于通用XAML的UI定义。 我们的目标是第一个版本,XAML Standard 1.0,将在今年晚些时候推出。

今天尝试加入对话

今天可以在这里开始我们为Xamarin.Forms 3.0烹饪的所有好东西。

下载Xamarin.Forms 3.0预览

我们已经发布了Xamarin.Forms嵌入到一个新的feed并分享我们的演示代码的预览。 为拿到它,为实现它:

  • 向NuGet Manager添加新的源码:https://www.myget.org/F/xamarinforms-dev/api/v3/index.json
  • 选中预发行
  • 选择并安装功能名称为“Embedding”的软件包. 3.0.0.100-embeddingpreview
  • 在GitHub上下载Weather演示应用程序代码。

准备好后,请浏览完整的Xamarin.Forms路线图,并加入GitHub上的XAML Standard对话。

 

观看我们完整的Microsoft Build 2017 Xamarin.Forms会话.