Xamarin是如何获得原生外观的?

Who*_*ami 10 xamarin.ios xamarin.android xamarin xamarin-studio

我是Xamarin的新手.我这里很少有困惑.

题:

  1. Xamarin如何获得UI组件的原生外观?
  2. Xamarin是否提供自己的小部件[如按钮,布局,...].

这是我的理解如果我错了,请纠正我?

1)通过原生SDK开发UI [按钮,布局...].例如iOS使用Xcode.对于Android?

2)考虑的按钮,按下按钮时,它会得到执行的代码是跨平台通用.

3)因此,由于UI直接来自各自的SDK,因此我们获得了原生外观.

请在我误解的地方纠正我?

jon*_*ers 23

我想你离开了.

Xamarin在iOS和Android上提供C#和.Net(Mono)运行时.同时,他们将每个平台上的本机API暴露给C#.因此,他们为C#构建了一种调用Objective-C和Java(反之亦然)的方法.

这意味着您可以在每个平台上开发本机UI,并且可以在平台之间共享后端业务逻辑.Xamarin应用程序可以跨平台共享50-75%的代码.跨平台没有UI的一般共享,因为这会抽象掉本机API.

要打破它:

Android的

  • 使用Xamarin Studio或Visual Studio开发C#后端代码
  • 使用Xamarin的Android设计器来布局原生Android XML布局

iOS版

  • 使用Xamarin Studio或Visual Studio*开发C#后端代码
  • 在Mac上使用XCode来布局故事板或XIB文件以用于本机iOS UI布局

这两个选项也可以从代码创建UI,但每个平台上的本机API都不同.

*需要一个mac来编译iOS