Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cross-Platform Native User Interfaceswith Xama...
Search
Pranav Ainavolu
September 19, 2016
Technology
0
55
Cross-Platform Native User Interfaces with Xamarin.Forms
Session Presented at Xamarin Dev Days - Hyderabad : Organized by MUGH.
Pranav Ainavolu
September 19, 2016
Tweet
Share
More Decks by Pranav Ainavolu
See All by Pranav Ainavolu
The Internet of Things with Azure Service Bus
pranavaa
0
390
Dev/Test Scenarios in the DevOps World
pranavaa
0
86
Other Decks in Technology
See All in Technology
Simplifying Cloud Native app testing across environments with Dapr and Microcks
salaboy
0
150
Performance Insights 廃止から Database Insights 利用へ/transition-from-performance-insights-to-database-insights
emiki
0
240
Developer Advocate / Community Managerなるには?
tsho
0
140
やる気のない自分との向き合い方/How to Deal with Your Unmotivated Self
sanogemaru
0
490
AWS IoT 超入門 2025
hattori
0
330
E2Eテスト設計_自動化のリアル___Playwrightでの実践とMCPの試み__AIによるテスト観点作成_.pdf
findy_eventslides
2
600
AWS Top Engineer、浮いてませんか? / As an AWS Top Engineer, Are You Out of Place?
yuj1osm
2
210
新規事業におけるGORM+SQLx併用アーキテクチャ
hacomono
PRO
0
210
20201008_ファインディ_品質意識を育てる役目は人かAIか___2_.pdf
findy_eventslides
2
620
いまからでも遅くない!SSL/TLS証明書超入門(It's not too late to start! SSL/TLS Certificates: The Absolute Beginner's Guide)
norimuraz
0
200
BI ツールはもういらない?Amazon RedShift & MCP Server で試みる新しいデータ分析アプローチ
cdataj
0
110
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
1
730
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.6k
Context Engineering - Making Every Token Count
addyosmani
6
240
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
The Language of Interfaces
destraynor
162
25k
Visualization
eitanlees
149
16k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Docker and Python
trallard
46
3.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
#XamarinDevDays #XamarinDevDaysHyd Hyderabad
None
None
Traditional Xamarin Approach With Xamarin.Forms: More code-sharing, all native iOS
C# UI Windows C# UI Android C# UI Shared C# Backend Shared UI Code Shared C# Backend
✓ 40+ Pages, layouts, and controls (Build from code behind
or XAML) ✓ Two-way data binding ✓ Navigation ✓ Animation API ✓ Dependency Service ✓ Messaging Center Shared C# Backend Shared UI Code
Layouts Pages Stack Absolute Relative Grid ContentView ScrollView Frame Content
MasterDetail Navigation Tabbed Carousel
ActivityIndicator BoxView Button DatePicker Editor Entry Image Label ListView Map
OpenGLView Picker ProgressBar SearchBar Slider Stepper TableView TimePicker WebView EntryCell ImageCell SwitchCell TextCell ViewCell
Xamarin.Forms Ecosystem
Windows Xamarin.Forms StackPanel StackLayout TextBox Entry ListBox ListView CheckBox Switch
ProgressBar ActivityIndicator Grid Grid Label Label Button Button Image Image Date/TimePicker Date/TimePicker
Windows Xamarin.Forms DataContext BindingContext {Binding Property} {Binding Property} ItemsSource ItemsSource
ItemTemplate ItemTemplate DataTemplate DataTemplate
None
<?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> </TabbedPage>
None
None
Xamarin.Forms is Open Source! open.xamarin.com
None
✓ Improves scrolling performance ✓ Old behavior is currently the
default (but likely to change)
XAML Parsed and inflated Parsed & turned into IL XAMLC
✓ Faster Loading ✓ Smaller App Size ✓ See XAML
errors at build time
None
None
• Embeddable Carousel • ItemTemplate & DataTemplates • Highly customizable
& Virtualized
✓ Custom renderer “lite” ✓ Change properties on the native
control ✓ Optional ✓ “stringly-typed” X No methods or events X No replacing the control
entry.Effects.Add (Effect.Resolve("Xamarin.BorderEffect"));
None
None
None
https://developer.xamarin.com/guides/xamarin-forms/datapages/
https://developer.xamarin.com/guides/xamarin-forms/themes/
Native Embedding
None
>>Next Session: Pranav Ainavolu Microsoft MVP | Senior Developer at
RealPage
[email protected]
http://pranavon.net/ @a_pranav