Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Cross-Platform Native User Interfaceswith Xama...
Search
Pranav Ainavolu
September 19, 2016
Technology
70
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cross-Platform Native User Interfaces with Xamarin.Forms
Session Presented at Xamarin Dev Days - Hyderabad : Organized by MUGH.
Pranav Ainavolu
September 19, 2016
More Decks by Pranav Ainavolu
See All by Pranav Ainavolu
The Internet of Things with Azure Service Bus
pranavaa
0
410
Dev/Test Scenarios in the DevOps World
pranavaa
0
100
Other Decks in Technology
See All in Technology
OptunaHub: ブラックボックス最適化のためのプラットフォーム
pfn
PRO
0
140
フロントエンドカンファレンス関西2026 - 速すぎるUIに、待ち時間を
teamlab
PRO
0
140
go-sqletch
moznion
0
140
PagerDuty Tech Hub-鳴らすけれど、人は動かない
ezaki
0
180
自作バイナリを動かす「入口」8選
puhitaku
2
1.3k
Classmethod Company Deck
satoshi7
1
700
Persisting Massive Data with Rails ~Designing for 60 billion rows, and fighting the bottlenecks~ Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
0
730
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
350
触りたくないデータに、どう触るか AI時代のRBACアクセスガバナンス
ivry_presentationmaterials
0
270
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
460
SAENM ~Jupyterで残すPoCの試行錯誤、未来の自分と仲間を助ける記録!~
terapyon
0
110
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
6
5k
Featured
See All Featured
Crafting Experiences
bethany
1
380
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
310
Navigating Weather and Climate Data
rabernat
0
560
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
580
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
360
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
780
The Pragmatic Product Professional
lauravandoore
37
7.5k
Leo the Paperboy
mayatellez
10
2.4k
Rails Girls Zürich Keynote
gr2m
96
14k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
430
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
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