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
54
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
85
Other Decks in Technology
See All in Technology
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.4k
企業の生成AIガバナンスにおけるエージェントとセキュリティ
lycorptech_jp
PRO
2
160
Agile PBL at New Grads Trainings
kawaguti
PRO
1
420
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
3
400
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
130
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
140
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
270
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
390
250905 大吉祥寺.pm 2025 前夜祭 「プログラミングに出会って20年、『今』が1番楽しい」
msykd
PRO
1
790
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
1
380
エラーとアクセシビリティ
schktjm
1
1.2k
2025年になってもまだMySQLが好き
yoku0825
8
4.7k
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Scaling GitHub
holman
463
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Thoughts on Productivity
jonyablonski
70
4.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
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