SlideShare una empresa de Scribd logo
1 de 53
Xamarin Navigation Patterns
Dan Hermes
developer, author, consultant,
founder of Lexicon Systems
dan@lexiconsystemsinc.com
www.mobilecsharpcafe.com
@danhermes
About me
• Software consultant since 1999
• Code, write, and lead teams
• Minecraft, tiki cocktails, my parrot, and digital art
• I love Xamarin
Xamarin Book
Now Available on Amazon
“This weighty book gives clear guidance that will help you
build quality apps, starting with architectural considerations,
and then jumping into practical code strategies.”
- Bryan Costanich, Vice President, Xamarin
“Dan Hermes’ extraordinary book is the most intelligent work
on cross-platform mobile development I’ve seen.”
– Jesse Liberty, Director of New Technology Development, Falafel Software,
Xamarin Certified Developer / Xamarin MVP
• Founded in 1999
• Develop web and mobile
apps
• Microsoft technology stack
We build apps for business
Our Clients Include
What is Navigation?
• More than menus
• Nav controls are a means to an end
What is Navigation?
Gets our user from place to place
What is Navigation?
Provides the UI skeleton of our entire app
What is Navigation?
• Gives users what they need to get around
an app quickly, moving from screen to
screen with confidence and ease
• This may include menus, tappable icons,
buttons, tabs, and list items, as well as
many types of gesture-sensitive screens to
display data, information, and options to
the user
Navigation Patterns
•Hierarchical
•Modal
•Drill-down list
•Navigation drawer
•Tabs
•Springboard
•Carousel
Hierarchical
Modal
Drill-down List
Navigation Drawer
Tabs
Springboard
Carousel
Xamarin.Forms Navigation
Navigation Pattern Xamarin.Forms Class
Hierarchical NavigationPage
Modal NavigationPage, alerts, and ActionSheets
Drill-down lists NavigationPage, ListView, and TableView
Navigation drawer MasterDetailPage
Tabs TabbedPage
Springboard images with gesture recognizers
Carousel CarouselPage
Most Common
Navigation Patterns
• Hierarchical
• Modal
Hierarchical
• stack-based pattern
• allows users to move down into a stack of screens
• pop back out again, one screen at a time
• drill-down or breadcrumb
Hierarchical:
Up and Back Buttons
Up
Back
Up
Hierarchical Navigation
using NavigationPage
• Instantiate a NavigationPage and pass in a ContentPage
• In the child page:
• Set Title and Icon Properties
• Navigation.PushAsync (new MyPage)
• Navigation.PopAsync();
NavigationPage
public class App : Application {
{
public App()
{
MainPage = new NavigationPage(new HomePage());
}
}
NavigationPage
• Demo: HomePage
NavigationPage:
Remove and Insert
• Navigation.RemovePage(page);
• Navigation.InsertPageBefore(insertPage, beforePage);
Back Button
public override void OnBackButtonPressed()
{
// your code here
base.OnBackButtonPressed ();
}
Modal
Modal Types
1. Box: floats on top of the main page and is usually an alert, dialog
box, or menu that the user can respond to or cancel
2. Screen: replaces the main page entirely, interrupting the
hierarchical navigation stack
Modals in Xamarin.Forms
• NavigationPage for full-page modals
• Alerts for user notifications
• Action sheets for pop-up menus
Full Screen Modal
using Push and Pop
• Navigation.PushModalAsync( new nextPage());
• Navigation.PopModalAsync();
Full Screen Modal
using Push and Pop
• Demo: ModalPage
Modal: Alerts
Boolean answer = await DisplayAlert(" Start", "Are you ready to
begin?", "Yes", "No");
Modal: Action Sheets
Button button = new Button { Text = "Show ActionSheet" };
button.Clicked += async (sender, e) =>
{
String action = await DisplayActionSheet("Options",
"Cancel", null, "Here", "There", "Everywhere");
label.Text = "Action is :" + action;
};
Modal: Action Sheets
Modal: Action Sheets
• Demo: PopupMenu
State Management
• Maintain the illusion of continuity during navigation
• Sharing of data between screens
• Pass variables directly into an instantiated ContentPage
Passing Data
• Pass data values directly into a page’s constructor
• Static Properties dictionary on the Application object to persist key/
value pairs to disk
• Static data instance (global) available to all pages
• Static properties on the Application object
Passing Data
• Demo: PropertiesPage1
• Demo:GlobalPage1, Global
Drill-down Lists
• by Item
• by Page
• Grouped
Drill-down Lists
• by Item – use a ListView
• by Page – use a ListView
• Grouped – use a TableView
Use PushAsync when user clicks a row
Drill-down Lists:
NavigationPage
• Wrap list page in a NavigationPage
public class App : Application
{
public App()
{
MainPage = new NavigationPage(new DrilldownListViewByItem
());
}
}
Drill-down Lists
• Demo: DrilldownListViewByItem
• Demo: DrilldownListViewByPage
• Demo: DrilldownTableView
Navigation Drawer
• Demo: MasterDetailPage
Tabs using TabbedPage
• Static
• Data-bound
• Demos
Springboard:
Images with
Gesture Recognizers
• Roll your own Springboard (demo)
Carousel using CarouselPage
this.Children.Add(new FirstPage());
this.Children.Add(new SecondPage());
this.Children.Add(new ThirdPage());
demo
Xamarin.Android
Navigation
• Hierarchical navigation using Toolbar or ActionBar
• Modal using DialogFragment, AlertDialog, and PopupMenu
• Drill-down list using ListView
• Navigation drawer using DrawerLayout
• Tabs using ActionBar
Xamarin.iOS
Navigation
• Hierarchical navigation using UINavigationController, the push segue,
or the PushViewController
• Modal using the modal segue, the PresentViewController, and
UIAlertAcontroller
• Drill-down list using UINavigationController
• Navigation drawer using components
• Tabs using UITabBarController
Android
State Management
Android uses a class called Bundle, which is a
dictionary that contains passed values,
housed inside a class called Intent, which we
use to call new activities
iOS
State Management
iOS developers favor public properties on the
destination view controller, but iOS supports
passing parameters into the destination
page’s constructor
Xamarin.Forms Navigation
Navigation Pattern Xamarin.Forms Class
Hierarchical NavigationPage
Modal NavigationPage, alerts, and ActionSheets
Drill-down lists NavigationPage, ListView, and TableView
Navigation drawer MasterDetailPage
Tabs TabbedPage
Springboard images with gesture recognizers
Carousel CarouselPage
It’s all on GitHub
https://github.com/danhermes/xamarin-book-examples
Need Something Xamarin-flavored?
• I do Xamarin consultations
• I do Xamarin training
• My firm does Xamarin development
• We help make Xamarin projects work
Xamarin Navigation
Patterns
Dan Hermes
developer, author, consultant,
founder of Lexicon Systems
dan@lexiconsystemsinc.com
Available on
Amazon
My blog: www.mobilecsharpcafe.com
Twitter: @danhermes

Más contenido relacionado

La actualidad más candente

Agility and planning : tools and processes
Agility and planning  : tools and processesAgility and planning  : tools and processes
Agility and planning : tools and processesJérôme Kehrli
 
3 Scrum Patterns to Boost Team Productivity
3 Scrum Patterns to Boost Team Productivity3 Scrum Patterns to Boost Team Productivity
3 Scrum Patterns to Boost Team Productivityardutta
 
Db workshop - art of story splitting and writting
Db  workshop - art of story splitting and writtingDb  workshop - art of story splitting and writting
Db workshop - art of story splitting and writtingPhil van Dulm Consultancy
 
Backlog Refinement at Scale
Backlog Refinement at ScaleBacklog Refinement at Scale
Backlog Refinement at ScaleCprime
 
Change Community of Practice Webinar: Life after go live - what Change Manage...
Change Community of Practice Webinar: Life after go live - what Change Manage...Change Community of Practice Webinar: Life after go live - what Change Manage...
Change Community of Practice Webinar: Life after go live - what Change Manage...Prosci ANZ
 
chaos-engineering-Knolx
chaos-engineering-Knolxchaos-engineering-Knolx
chaos-engineering-KnolxKnoldus Inc.
 
Agile Product Development Workshop
Agile Product Development WorkshopAgile Product Development Workshop
Agile Product Development WorkshopSean Ammirati
 
Kanban/Scrumban - taking scrum outside its comfort zone
Kanban/Scrumban - taking scrum outside its comfort zoneKanban/Scrumban - taking scrum outside its comfort zone
Kanban/Scrumban - taking scrum outside its comfort zoneYuval Yeret
 
Data weave 2.0 advanced (recursion, pattern matching)
Data weave 2.0   advanced (recursion, pattern matching)Data weave 2.0   advanced (recursion, pattern matching)
Data weave 2.0 advanced (recursion, pattern matching)ManjuKumara GH
 
Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Agifall - Combining Waterfall and Agile Development Process for Digital and S...Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Agifall - Combining Waterfall and Agile Development Process for Digital and S...Mark Fromson
 
Software Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid MethodSoftware Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid MethodIntland Software GmbH
 
IIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteriaIIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteriaSteven HK Ma | 馬國豪
 

La actualidad más candente (20)

Agility and planning : tools and processes
Agility and planning  : tools and processesAgility and planning  : tools and processes
Agility and planning : tools and processes
 
3 Scrum Patterns to Boost Team Productivity
3 Scrum Patterns to Boost Team Productivity3 Scrum Patterns to Boost Team Productivity
3 Scrum Patterns to Boost Team Productivity
 
Vagrant
VagrantVagrant
Vagrant
 
User stories in agile software development
User stories in agile software developmentUser stories in agile software development
User stories in agile software development
 
GORM
GORMGORM
GORM
 
Selenium
SeleniumSelenium
Selenium
 
Spring Cloud Config
Spring Cloud ConfigSpring Cloud Config
Spring Cloud Config
 
Logback
LogbackLogback
Logback
 
Db workshop - art of story splitting and writting
Db  workshop - art of story splitting and writtingDb  workshop - art of story splitting and writting
Db workshop - art of story splitting and writting
 
Backlog Refinement at Scale
Backlog Refinement at ScaleBacklog Refinement at Scale
Backlog Refinement at Scale
 
Change Community of Practice Webinar: Life after go live - what Change Manage...
Change Community of Practice Webinar: Life after go live - what Change Manage...Change Community of Practice Webinar: Life after go live - what Change Manage...
Change Community of Practice Webinar: Life after go live - what Change Manage...
 
chaos-engineering-Knolx
chaos-engineering-Knolxchaos-engineering-Knolx
chaos-engineering-Knolx
 
Agile Product Development Workshop
Agile Product Development WorkshopAgile Product Development Workshop
Agile Product Development Workshop
 
Kanban/Scrumban - taking scrum outside its comfort zone
Kanban/Scrumban - taking scrum outside its comfort zoneKanban/Scrumban - taking scrum outside its comfort zone
Kanban/Scrumban - taking scrum outside its comfort zone
 
Data weave 2.0 advanced (recursion, pattern matching)
Data weave 2.0   advanced (recursion, pattern matching)Data weave 2.0   advanced (recursion, pattern matching)
Data weave 2.0 advanced (recursion, pattern matching)
 
What should Scrum Master do on the project?
What should Scrum Master do on the project?What should Scrum Master do on the project?
What should Scrum Master do on the project?
 
Ansible과 CloudFormation을 이용한 배포 자동화
Ansible과 CloudFormation을 이용한 배포 자동화Ansible과 CloudFormation을 이용한 배포 자동화
Ansible과 CloudFormation을 이용한 배포 자동화
 
Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Agifall - Combining Waterfall and Agile Development Process for Digital and S...Agifall - Combining Waterfall and Agile Development Process for Digital and S...
Agifall - Combining Waterfall and Agile Development Process for Digital and S...
 
Software Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid MethodSoftware Development with Agile Waterfall Hybrid Method
Software Development with Agile Waterfall Hybrid Method
 
IIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteriaIIT Academy: 204 User stories and acceptance criteria
IIT Academy: 204 User stories and acceptance criteria
 

Destacado

Dan Lockton Behavior Design Amsterdam New Year 2016
Dan Lockton Behavior Design Amsterdam New Year 2016Dan Lockton Behavior Design Amsterdam New Year 2016
Dan Lockton Behavior Design Amsterdam New Year 2016Behavior Design AMS
 
Cross platform mobile development in c#
Cross platform mobile development in c#Cross platform mobile development in c#
Cross platform mobile development in c#danhermes
 
Navigation in Xamarin.Forms
Navigation in Xamarin.FormsNavigation in Xamarin.Forms
Navigation in Xamarin.FormsKym Phillpotts
 
Hybrid Smart phone application development analysis
Hybrid Smart phone application development analysisHybrid Smart phone application development analysis
Hybrid Smart phone application development analysisSandeep Krishna
 
Pieter De Baets - An introduction to React Native
Pieter De Baets - An introduction to React NativePieter De Baets - An introduction to React Native
Pieter De Baets - An introduction to React Nativetlv-ios-dev
 
Introduction to React Native & Redux
Introduction to React Native & ReduxIntroduction to React Native & Redux
Introduction to React Native & ReduxBarak Cohen
 
Integrating Mobile Technology in the Construction Industry
Integrating Mobile Technology in the Construction IndustryIntegrating Mobile Technology in the Construction Industry
Integrating Mobile Technology in the Construction IndustryAppear
 
하이브리드앱 아키텍쳐 및 개발 사례
하이브리드앱 아키텍쳐 및 개발 사례하이브리드앱 아키텍쳐 및 개발 사례
하이브리드앱 아키텍쳐 및 개발 사례동수 장
 
Navigation Patterns for iOS, Android and More
Navigation Patterns for iOS, Android and MoreNavigation Patterns for iOS, Android and More
Navigation Patterns for iOS, Android and MoreTheresa Neil
 
Intro To React Native
Intro To React NativeIntro To React Native
Intro To React NativeFITC
 

Destacado (10)

Dan Lockton Behavior Design Amsterdam New Year 2016
Dan Lockton Behavior Design Amsterdam New Year 2016Dan Lockton Behavior Design Amsterdam New Year 2016
Dan Lockton Behavior Design Amsterdam New Year 2016
 
Cross platform mobile development in c#
Cross platform mobile development in c#Cross platform mobile development in c#
Cross platform mobile development in c#
 
Navigation in Xamarin.Forms
Navigation in Xamarin.FormsNavigation in Xamarin.Forms
Navigation in Xamarin.Forms
 
Hybrid Smart phone application development analysis
Hybrid Smart phone application development analysisHybrid Smart phone application development analysis
Hybrid Smart phone application development analysis
 
Pieter De Baets - An introduction to React Native
Pieter De Baets - An introduction to React NativePieter De Baets - An introduction to React Native
Pieter De Baets - An introduction to React Native
 
Introduction to React Native & Redux
Introduction to React Native & ReduxIntroduction to React Native & Redux
Introduction to React Native & Redux
 
Integrating Mobile Technology in the Construction Industry
Integrating Mobile Technology in the Construction IndustryIntegrating Mobile Technology in the Construction Industry
Integrating Mobile Technology in the Construction Industry
 
하이브리드앱 아키텍쳐 및 개발 사례
하이브리드앱 아키텍쳐 및 개발 사례하이브리드앱 아키텍쳐 및 개발 사례
하이브리드앱 아키텍쳐 및 개발 사례
 
Navigation Patterns for iOS, Android and More
Navigation Patterns for iOS, Android and MoreNavigation Patterns for iOS, Android and More
Navigation Patterns for iOS, Android and More
 
Intro To React Native
Intro To React NativeIntro To React Native
Intro To React Native
 

Similar a Xamarin Navigation Patterns

Xamarin Navigation Patterns
Xamarin Navigation PatternsXamarin Navigation Patterns
Xamarin Navigation Patternsdanhermes
 
Windows Phone 8 - 3 Building WP8 Applications
Windows Phone 8 - 3 Building WP8 ApplicationsWindows Phone 8 - 3 Building WP8 Applications
Windows Phone 8 - 3 Building WP8 ApplicationsOliver Scheer
 
User experience and interactions design
User experience and interactions design User experience and interactions design
User experience and interactions design Rakesh Jha
 
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019Alejandro Ruiz Varela
 
03.Controls in Windows Phone
03.Controls in Windows Phone03.Controls in Windows Phone
03.Controls in Windows PhoneNguyen Tuan
 
Native Mobile Testing for Newbies
Native Mobile Testing for NewbiesNative Mobile Testing for Newbies
Native Mobile Testing for NewbiesSusan Hewitt
 
Creating Modern UI PowerBuilder Framework using native objects
Creating Modern UI PowerBuilder Framework using native objectsCreating Modern UI PowerBuilder Framework using native objects
Creating Modern UI PowerBuilder Framework using native objectszulmach .
 
Developing for Sets on Windows 10
Developing for Sets on Windows 10Developing for Sets on Windows 10
Developing for Sets on Windows 10Windows Developer
 
WordPress Navigation in Responsive Design
WordPress Navigation in Responsive DesignWordPress Navigation in Responsive Design
WordPress Navigation in Responsive Designopenchamp
 
Application Design - Part 2
Application Design - Part 2Application Design - Part 2
Application Design - Part 2Kelley Howell
 
Designing and implementing_android_uis_for_phones_and_tablets
Designing and implementing_android_uis_for_phones_and_tabletsDesigning and implementing_android_uis_for_phones_and_tablets
Designing and implementing_android_uis_for_phones_and_tabletsTeddy Koornia
 
Building Responsive Websites with Drupal
Building Responsive Websites with DrupalBuilding Responsive Websites with Drupal
Building Responsive Websites with DrupalSuzanne Dergacheva
 
Creating a Responsive Drupal Theme: Presentation from DrupalCamp Montreal 2012
Creating a Responsive Drupal Theme: Presentation from DrupalCamp Montreal 2012Creating a Responsive Drupal Theme: Presentation from DrupalCamp Montreal 2012
Creating a Responsive Drupal Theme: Presentation from DrupalCamp Montreal 2012Suzanne Dergacheva
 
Xamarin.Forms a different approach to cross platform natove mobile development
Xamarin.Forms a different approach to cross platform natove mobile developmentXamarin.Forms a different approach to cross platform natove mobile development
Xamarin.Forms a different approach to cross platform natove mobile developmentDan Ardelean
 
Windows Phone Application development
Windows Phone Application developmentWindows Phone Application development
Windows Phone Application developmentvkalve
 

Similar a Xamarin Navigation Patterns (20)

Xamarin Navigation Patterns
Xamarin Navigation PatternsXamarin Navigation Patterns
Xamarin Navigation Patterns
 
Windows Phone 8 - 3 Building WP8 Applications
Windows Phone 8 - 3 Building WP8 ApplicationsWindows Phone 8 - 3 Building WP8 Applications
Windows Phone 8 - 3 Building WP8 Applications
 
User experience and interactions design
User experience and interactions design User experience and interactions design
User experience and interactions design
 
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019
Deep Dive into Xamarin.Forms Shell @ Xamarin Summit Brasil 2019
 
03.Controls in Windows Phone
03.Controls in Windows Phone03.Controls in Windows Phone
03.Controls in Windows Phone
 
Intro to Axure
Intro to AxureIntro to Axure
Intro to Axure
 
Native Mobile Testing for Newbies
Native Mobile Testing for NewbiesNative Mobile Testing for Newbies
Native Mobile Testing for Newbies
 
Creating Modern UI PowerBuilder Framework using native objects
Creating Modern UI PowerBuilder Framework using native objectsCreating Modern UI PowerBuilder Framework using native objects
Creating Modern UI PowerBuilder Framework using native objects
 
Prototyping + User Journeys
Prototyping + User JourneysPrototyping + User Journeys
Prototyping + User Journeys
 
Developing for Sets on Windows 10
Developing for Sets on Windows 10Developing for Sets on Windows 10
Developing for Sets on Windows 10
 
##dd12 sviluppo mobile XPages
##dd12 sviluppo mobile XPages##dd12 sviluppo mobile XPages
##dd12 sviluppo mobile XPages
 
Diving Into Xamarin.Forms
Diving Into Xamarin.Forms Diving Into Xamarin.Forms
Diving Into Xamarin.Forms
 
WordPress Navigation in Responsive Design
WordPress Navigation in Responsive DesignWordPress Navigation in Responsive Design
WordPress Navigation in Responsive Design
 
Web Accessibility
Web AccessibilityWeb Accessibility
Web Accessibility
 
Application Design - Part 2
Application Design - Part 2Application Design - Part 2
Application Design - Part 2
 
Designing and implementing_android_uis_for_phones_and_tablets
Designing and implementing_android_uis_for_phones_and_tabletsDesigning and implementing_android_uis_for_phones_and_tablets
Designing and implementing_android_uis_for_phones_and_tablets
 
Building Responsive Websites with Drupal
Building Responsive Websites with DrupalBuilding Responsive Websites with Drupal
Building Responsive Websites with Drupal
 
Creating a Responsive Drupal Theme: Presentation from DrupalCamp Montreal 2012
Creating a Responsive Drupal Theme: Presentation from DrupalCamp Montreal 2012Creating a Responsive Drupal Theme: Presentation from DrupalCamp Montreal 2012
Creating a Responsive Drupal Theme: Presentation from DrupalCamp Montreal 2012
 
Xamarin.Forms a different approach to cross platform natove mobile development
Xamarin.Forms a different approach to cross platform natove mobile developmentXamarin.Forms a different approach to cross platform natove mobile development
Xamarin.Forms a different approach to cross platform natove mobile development
 
Windows Phone Application development
Windows Phone Application developmentWindows Phone Application development
Windows Phone Application development
 

Más de danhermes

Azure Mobile Apps with Xamarin
Azure Mobile Apps with XamarinAzure Mobile Apps with Xamarin
Azure Mobile Apps with Xamarindanhermes
 
Developing Cross-platform Native Apps with Xamarin
Developing Cross-platform Native Apps with XamarinDeveloping Cross-platform Native Apps with Xamarin
Developing Cross-platform Native Apps with Xamarindanhermes
 
Building Mobile Apps for Business
Building Mobile Apps for BusinessBuilding Mobile Apps for Business
Building Mobile Apps for Businessdanhermes
 
Mobile UI Design Patterns
Mobile UI Design PatternsMobile UI Design Patterns
Mobile UI Design Patternsdanhermes
 
How App Usability, Functionality, and Analysis are Changing with Mobile
  How App Usability, Functionality, and Analysis are Changing with Mobile  How App Usability, Functionality, and Analysis are Changing with Mobile
How App Usability, Functionality, and Analysis are Changing with Mobiledanhermes
 
What can mobile do for me
What can mobile do for meWhat can mobile do for me
What can mobile do for medanhermes
 
Agile Development in .NET
Agile Development in .NETAgile Development in .NET
Agile Development in .NETdanhermes
 
Mastering human communication patterns
Mastering human communication patternsMastering human communication patterns
Mastering human communication patternsdanhermes
 

Más de danhermes (8)

Azure Mobile Apps with Xamarin
Azure Mobile Apps with XamarinAzure Mobile Apps with Xamarin
Azure Mobile Apps with Xamarin
 
Developing Cross-platform Native Apps with Xamarin
Developing Cross-platform Native Apps with XamarinDeveloping Cross-platform Native Apps with Xamarin
Developing Cross-platform Native Apps with Xamarin
 
Building Mobile Apps for Business
Building Mobile Apps for BusinessBuilding Mobile Apps for Business
Building Mobile Apps for Business
 
Mobile UI Design Patterns
Mobile UI Design PatternsMobile UI Design Patterns
Mobile UI Design Patterns
 
How App Usability, Functionality, and Analysis are Changing with Mobile
  How App Usability, Functionality, and Analysis are Changing with Mobile  How App Usability, Functionality, and Analysis are Changing with Mobile
How App Usability, Functionality, and Analysis are Changing with Mobile
 
What can mobile do for me
What can mobile do for meWhat can mobile do for me
What can mobile do for me
 
Agile Development in .NET
Agile Development in .NETAgile Development in .NET
Agile Development in .NET
 
Mastering human communication patterns
Mastering human communication patternsMastering human communication patterns
Mastering human communication patterns
 

Xamarin Navigation Patterns

Notas del editor

  1. Why all the funny names? CROSS PLATFORM terms Inspired in part by by Adam Kemp’s blog post, Navigation in Xamarin.Forms and Mobile Design Pattern Gallery by Theresa Neil @TheRealAdamKemp
  2. Why all the funny names? CROSS PLATFORM terms Inspired in part by by Adam Kemp’s blog post, Navigation in Xamarin.Forms and Mobile Design Pattern Gallery by Theresa Neil @TheRealAdamKemp
  3. Why all the funny names? CROSS PLATFORM terms Inspired in part by by Adam Kemp’s blog post, Navigation in Xamarin.Forms and Mobile Design Pattern Gallery by Theresa Neil @TheRealAdamKemp
  4. Carousel – we’ll get to it. – Doesn’t show well in a static image
  5. images
  6. Drill-down (push onto stack), pop back up
  7. images
  8. Dropdown menu - ToolBarItems
  9. Single, interruptive pop-up or screen can usually be dismissed with a Cancel button
  10. Both the global and Application object techniques use the singleton pattern, and are useful for app-wide classes such as data access or business objects.
  11. Activity and fragment properties are available but not recommended (rotation, low mem, etc.)