"intro to-xamarin.forms", Кирилл Стативкин, microsoft student partner

Post on 24-Jan-2017

100 Views

Category:

Education

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Intro to Xamarin.Forms

Kirill StativkinMicrosoft Student Partnerkirill.stativkin@studentpartner.com

Microsoft Student Partner Ukraine/FranceC# Mobile developerFull Stack C# developer Iafoo.com France

https://www.facebook.com/kirill.stativkin

Xamarin User Group Ukrainehttps://www.facebook.com/groups/xamarin.ua/

Make it fast, easy, and fun to create great native mobile

apps.

Xamarin’s Mission

What is native?

• Xamarin apps look and feel native because they are native

Native User Interfaces Native API Access Native Performance

The Silo Approach

Build App Multiple Times

The Write-Once-Run-Anywhere Approach

Lowest CommonDenominator

Xamarin’s Unique Approach

Shared C# codebase • 100% native API access • High performance

iOS C# UI Android C# UI Windows C# UI

Shared C# Mobile

Visual Studio

Xamarin Studio

Native Performance

Xamarin.iOS does full Ahead Of Time (﴾AOT) ﴿ compilation to produce an ARM binary for Apple’s App Store.

Xamarin.Android takes advantage of Just In Time (﴾JIT) ﴿ compilation on the Android device.

.NETC#

Compile

and Link.APK

Bindings

IL+ JIT

Runs Native

ly

Xamarin + Xamarin.Forms

Traditional Xamarin Approach

With Xamarin.Forms:More code-‐sharing,

all native

Shared UI Code

Shared C# Backend

iOS C# UI Android C# UI Windows C# UI

Shared C# Backend

What’s included✓ 40+ Pages, layouts, and

controls(﴾Build from code behind or XAML)﴿

✓ Two-‐way data binding✓ Navigation✓ Animation API✓ Dependency Service✓ Messaging Center

Shared UI Code

Shared C# Backend

Layouts

Pages

Stack

Absolute

Relative

Grid

ContentView

ScrollView

Frame

Content

MasterDetail

Navigation

Tabbed

ActivityIndicator

BoxView Button DatePicker Editor

Entry Image Label ListView Map

OpenGLView Picker ProgressBar SearchBar Slider

Stepper TableView TimePicker WebView EntryCell

ImageCell SwitchCell TextCell ViewCell

Controls

Windows Xamarin.FormsStackPanel StackLayoutTextBox EntryListBox ListViewCheckBox SwitchProgressBar ActivityIndicatorGrid GridLabel LabelButton ButtonImage ImageDate/TimePicker Date/TimePicker

Control Comparison

<?xml version="1.0" encoding="UTF- ‐8"?><TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"

xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"x:Class="MyApp.MainPage">

<TabbedPage.Children><ContentPage Title="Profile" Icon="Profile.png"><StackLayout Spacing="20" Padding="20"

VerticalOptions="Center"><Entry Placeholder="Username"

Text="{Binding Username}"/>

<Entry Placeholder="Password" Text="{Binding Password}"IsPassword="true"/>

<Button Text="Login" TextColor="White" BackgroundColor="#77D065" Command="{Binding LoginCommand}"/>

</StackLayout></ContentPage><ContentPage Title="Settings" Icon="Settings.png"><!- ‐- ‐ Settings - ‐- ‐></ContentPage></TabbedPage.Children>

Native UI from shared code

Demo

Windows APIs

100%Coverage

iOS APIs

100%Coverage

Android APIs

100%Coverage

Demo

Data pages

Demo

Get Started Today xamarin.com

Kirill StativkinMicrosoft Student PartnerKirill.Stativkin@studentpartner.com

Thank you. Questions?

https://www.facebook.com/groups/xamarin.ua/

top related