预览:将macOS引入Xamarin.Forms

2800阅读 0评论2017-10-18 renxiao2003
分类:Android平台

令人惊讶的是,您现在可以通过对Xamarin.Forms解决方案进行一些调整来运行本机macOS应用程序。 而我必须说“应用程序”,因为那是桌面,对吧?

正如我在上周的Xamarin.Forms 2.3.5预发布公告中所说的,XAMarin.Forms中的macOS支持现在已经在Preview中了。 我们来试试将这个新项目添加到现有的Xamarin.Forms解决方案中,您可能面临的障碍以及当前和将来的平台功能状态。

配置一个macOS项目

D开发macOS是一个Mac的功能,所以同样的规则适用于当你在做一个Xamarin.Mac应用程序。 这里有一个很好的Xamarin.Mac指南,涵盖了先决条件。

当您将XAMarin.Forms macOS项目集成到一个持续的集成系统中,您可以轻松地在Windows上为MacOS构建,就像您现在可以使用iOS一样。

添加可可应用程序项目

直到Xamarin.Forms模板添加一个Cocoa应用程序,我们可以很容易地添加它自己。 要在Xamarin.Studio或Visual Studio for Mac中执行此操作,请在解决方案中添加一个新项目,然后选择Mac> App> Cocoa App。

Adding macOS Project

配置项目

Cocoa应用程序模板配置了一个故事板实现,您将不需要它。 您可以将其留在那里,但是当应用程序运行时,最终会出现两个窗口。

以下是您需要做的快速列表:

运行

将macOS项目作为启动,运行它。瞧! 你现在有一个本地macOS应用程序!

Example of Sample Weather App

下一步是什么?

现在你有一个应用程序,现在是时候放上你的UX Designer帽子,并开始探索你需要在这个新的桌面环境中感受更多的变化。

造型

运行您的XAMarin.Forms UI for MacOS。 手机上使用的相同样式可能看起来不正确。 这很容易更新!

随着近期对OnPlatform的更改,您现在可以定位任意数量的平台。 那包括macOS。

点击(此处)折叠或打开

  1. <Button.TextColor>
  2.     <OnPlatform x:TypeArguments="Color">
  3.         <On Platform="iOS" Value="White"/>
  4.         <On Platform="macOS" Value="White"/>
  5.         <On Platform="Android" Value="Black"/>
  6.     </OnPlatform>
  7. </Button.TextColor>


请注意,您还可以在“On Platform =”iOS,macOS“...>等平台上加倍。

窗口大小和位置

引导窗口是否太大? 太小? 在屏幕上发出奇怪的位置? 您可以在AppDelegate上调整所有这一行:

var rect = new CoreGraphics.CGRect(200, 1000, 1024, 768);

已知的问题

这是一个预览,所以你应该期望不是一切都准备好了。 以下是您在项目中添加macOS时可能遇到的几件事情。

macOS上不是所有的NuGets都准备好了

为了在macOS项目中工作,软件包必须定位到xamarinmac20。 您可能会发现一些您心爱的图书馆还不支持macOS。 你能做什么? 请发送请求给项目的维护者添加。 在获得支持之前,您可能需要寻找替代品。

Xamarin.Forms功能

这个预览有惊人的Xamarin.Forms UI和功能的覆盖,但有一些已知的差距要注意。

尚未实现 :

发送您的反馈!

将MacOS项目和预发行版添加到您的解决方案中,让我们知道您的想法。 你觉得缺少什么? 遇到什么问题?

为了快速开始,您可以抓住我在GitHub上更新的WeatherApp:

上一篇:使您的Xamarin.Forms应用程序可访问
下一篇:客人发帖:添加一个日历到您的Xamarin.Forms应用程序与Telerik日历