01 前言

作者: 归零者 分类: Xamarin.forms基础 发布时间: 2017-08-30 17:47

前言

学习要求:
Xamarin 适合已经懂一些 C#,又想用 Visual Studio 来开发手机 App 的开发人员学习。
在 Xamarin 代码內有大量的 Lambda 语法,若对这块还不熟的可以先行了解。
开发环境:

  • Visual Studio 2017 in Windows.
  • MacBook 安装了 Xcode 和Xamarin Platform.
  • iPhone
  • Android 开发环境

什么是Forms ?:

在 2014 年 5 月 28 号 Xamarin 发布了 Xamarin.Forms.

能够同时开发 Android, iOS 和 Windows 的应用程序.

Xamarin.Forms 支持五种设备:

  • iPhoen, iPad, iPod Touch 使用的 iOS 系統
  • Android 手机和平板
  • Windows 10 或 Windows 10 手机使用的Universal Winddows Platform(UWP) 系統
  • Windows 8.1
  • Windows 8.1 手机

下边这张图可以解释 Xamarin.Forms 和三中系统的架构,
程序员在第二和三层做一个整合开发,就能同时完成 iOS、Android、Windows 的 App。


Xamarin.Forms.Core 会分别将 user-interface 对应各平台不同的 user-interface。
例如:
在 Xamarin.Forms 內有个叫做 Slider 的控件,分別对应了 iOS 的 UISlider 和 Android 的 SeekBar

如下图,
手机画面上的元件包含了 Label,Button,Switch 和 Slider,还有一个 ToolBarItem 分別在平台画面上方的位置。
这些不同手机的控件,在 Xamarin.Forms 都只需要写一次。

Xamarin.Forms 也支持平板的开发,底下这张为 iPad Air 2 模拟器的执行结果.

标签式语法 XAML:

Xamarin 前端支持的语法为 XAML (念为“zammel”),是 XML 衍伸而来的标签是语法,听不懂的话,他就是有点像 HTML.

  1. <contentpage x:class=”TestXamarin.MainPage”
  2. xmlns:local=”clr-namespace:TestXamarin”
  3. xmlns:x=”http://schemas.microsoft.com/winfx/2009/xaml”
  4. xmlns=”http://xamarin.com/schemas/2014/forms”>
  5. <label horizontaloptions=”Center”
  6. text=”Welcome to Xamarin Forms!”
  7. verticaloptions=”Center”>
  8. </label>
  9. </contentpage>

标签是语法的好处是可以省去很多些.cs代码的麻烦,但标签式语法最大的缺点就是无法加入循环,逻辑或运算.
Xamarin.Forms 的缺点:
Xamarin.Forms  定义和结合了不同手机平台较为相似的API.
但是,若你的 App 要开发相当多原生的功能时候,则较为不合适.
另一方面来说,Xamarin.Forms 很适合做 App 的快速原型开发,

等到各平台UI和功能都确定后,再着手修改会用到原生 API 功能就好。

 

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

说点什么

avatar
  Subscribe  
提醒
跳至工具栏