需要为 iOS、Android 和 Microsoft Windows Phone 设备 (Windows Phone 7/8) 编写 GUI。
用 Xamarin Monotouch C# 编写的同一个程序是否可以在所有三个平台上运行?
最佳答案
详细说明@choper 的回答...
Xamarin.iOS(正式名称为 MonoTouch)为您提供编写将在 iOS 设备(或模拟器)上运行的 .NET 应用程序所需的工具和 API/SDK;
Xamarin.Android(正式名称为 Android 的 Mono)为您提供编写将在 Android 设备(或模拟器)上运行的 .NET 应用程序所需的工具和 API/SDK;
Xamarin.Mac 为您提供编写将在 OSX 计算机上运行的 .NET 应用程序所需的工具和 API/SDK;
所有产品均基于开源 Mono 项目。它们都提供与 Xamarin Studio IDE 配合使用的插件(可选的 XI 和 XA 可以在 Visual Studio 中工作,请参阅注释)。
所以同一个产品不会让你一次编写,到处运行。但是,它们可以让您在支持 Xamarin 的平台和其他 .NET 平台(Windows、Windows Phone...)之间共享大量逻辑代码(通常超过 80%)。一些设计模式(MVC、MVVM)和库(例如 MVVMCross)可以帮助您最大限度地共享代码 - 但它们是可选的(即您可以自己推出)。
您仍然需要为每个特定平台编写一些用户界面代码 - 但这使您能够在每个平台上提供原生、高质量的用户体验,而无需每次都重写应用程序(例如,iOS/Mac 上的 ObjC、Android 上的 Java 和 Windows/Windows Phone 上的 C#)。
注意:仍然需要 Mac 才能从 Visual Studio 构建/调试 iOS 应用程序。
关于windows-phone-7 - Xamarin Monotouch 是否可以在 Microsoft Windows Phone 移动版上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22492437/