Xamarin.forms 是Xamarin.Android、Xamarin.IoS和Xamarin.Win的简单总和?

Xamarin.forms 是Xamarin.Android、Xamarin.IoS和Xamarin.Win的简单总和?,xamarin.forms,xamarin.android,xamarin.ios,Xamarin.forms,Xamarin.android,Xamarin.ios,是否将Xamarin.Forms视为带有共享代码库包装器的Xamarin.Android和Xamarin.IoS的简单总和?还是引擎盖下的东西太多了 我不是在谈论共享代码库,因为我意识到它是Xamarin.Forms特有的,而是(例如)如果我将Xamarin.Droid项目与Xamarin.Forms解决方案的android代码库进行比较,我会发现有什么显著的差异吗?我会发现有什么不同吗。同样适用于IoS和Windows 只是提供背景;我对使用一些最初为Xamarin.android设计的工具感

是否将Xamarin.Forms视为带有共享代码库包装器的Xamarin.Android和Xamarin.IoS的简单总和?还是引擎盖下的东西太多了

我不是在谈论共享代码库,因为我意识到它是Xamarin.Forms特有的,而是(例如)如果我将Xamarin.Droid项目与Xamarin.Forms解决方案的android代码库进行比较,我会发现有什么显著的差异吗?我会发现有什么不同吗。同样适用于IoS和Windows

只是提供背景;我对使用一些最初为Xamarin.android设计的工具感兴趣,但是我的项目是Xamarin.forms解决方案,如果我遇到了麻烦,提前知道会很酷


提前感谢大家。

最终,Xamarin表单是对本机API的包装,因此如果您有Xamarin表单中的内容,当然可以将其移植到Xamarin Android、iOS或Windows

是否将Xamarin.Forms视为带有共享代码库包装器的Xamarin.Android和Xamarin.IoS的简单总和?还是引擎盖下的东西太多了

最简单的说,Xamarin.Forms是一个用于构建用户界面的移动应用程序框架。Xamarin网站的定义是:

Forms是一个跨平台的UI工具包,允许开发人员轻松创建本机用户界面布局,可以在Android、iOS和Windows Phone之间共享

但不要只关注定义中的术语“UI”,而只考虑屏幕上的控件。相反,把重点放在“工具箱”这个词上,比如Xamarin。除了跨平台工作的用户界面控件之外,表单还提供了更多功能

Forms将发布100%的原生iOS、Android或UWP应用程序——事实上,任何Xamarin.Forms应用程序的起点都在这些平台项目中。然而,这是平台特定代码所需要的。其余的代码都可以写在所有应用程序共享的一个层中

如果我将一个Xamarin.Droid项目与一个Xamarin.Forms解决方案的android代码库进行比较,我会发现有什么显著的区别吗?我会发现有什么不同吗。同样适用于IoS和Windows


仅仅是基本的API差异,表单和本机之间的差异

您应该将Xamarin.forms视为实际平台上UI的抽象。Forms(XF)在本机平台控件中呈现UI,但它们是使用XF XAML创建的

针对XF进行编码就像在UI级别使用不同的工具集为不同的平台进行编码一样


如果需要,您可以通过接口实现和注入深入了解特定于平台的详细信息。

不,这不仅仅是部分的“总和”。它添加了许多自己的附加功能,并且它也有一些限制,因为它不能充分利用只存在于一个平台上的功能。但这是一个非常广泛的问题,无法在SOOk上得到有意义的回答,这是有意义的,但并不意味着xamarin.droid项目是否被视为等同于xamarin.forms解决方案的android代码库。android代码库中是否存在这种额外的复杂性?“等效”意味着什么?但通常情况下,表单解决方案中的Android项目将由Xamarin Android代码组成,尽管它可能利用诸如MessagingCenter或DependencyService之类的表单功能,etcBy equivalence我的意思是,除了自定义渲染器和依赖服务之外,xamarin.forms解决方案的droid部分是否可以在没有问题的情况下移植到常规xamarin.droid项目?通常是的。