SlideShare a Scribd company logo
1 of 53
Android UI Patterns


           Presented by
           Vladan Pulec


Created by Vladan Pulec and Peter Pascale
Agenda

       Android UI History
     Android 4 UI Highlights
      Android UI Patterns
Android Version History




Look and Feel
Formalized

2009
Android Version History




2010 Google IO

Dashboard UI Pattern
Android Version History




2011 Google IO

Tablet Patterns

No More
Dashboard
Android Version History




Ice Cream Sandwich
October 19 2010

Honeycomb UI - Unification

No More Hardware Buttons
Android Market Share




http://blog.nielsen.com/nielsenwire/online_mobile/generation-app-62-of-mobile-users-25-34-own-smartphones/
Android Market Share




 Source: Nielsen
 (http://www.bgr.com/2011/12/15/smartphone-penetration-skyrockets-in-2011-iphone-becomes-no-1-handset/ )
Android Versions - Reality




Source: developer.android.com
As of March 5, 2012
UI Design Pattern Goals




Image Source: http://www.flickr.com/photos/jdhancock/5138860024/
Tablet vs. Phone User Experience
 Users hold and interact with phones and tablets differently

    UI needs to be adaptive to support user interaction
UI Design Goals Related to Patterns


                  Stay Consistent

             Use Visual Hierarchy

                  Value Simplicity

         Pay Attention to Patterns




Image Source: http://www.flickr.com/photos/45574318@N00/5370376951/
Android 4.0 UI Features

                                                                     Simplified Look and Feel

                                                                         Unified Tablet/Phone
                                                                               Platform

                                                                   System Bar and Action Bar

                                                                    Virtual Navigation Buttons

                                                                        No Hardware Buttons



Image Source: http://www.flickr.com/photos/lwallenstein/3870027760/sizes/m/in/photostream/
Navigation in Android 4.0

 Software Navigation Buttons


  System Back

  System Home

  Recents


  No Search or Menu
Android UI Patterns

                Action Bar

             Multi-Pane Layout

                 Carousel

               Quick Actions

                Dashboard

               Workspaces
Action Bar

Multi-Pane Layout

    Carousel

  Quick Actions

   Dashboard

  Workspaces
Action Bar



    Dedicated Real Estate at the Top of Each Screen

   Make Frequent Actions Prominent

   Support Navigation

   Indicate Current Location in App

   Consistent Between Tablets and Phones

   Provide Branding
Action Bar - Sections



          Where am I?
      application icon or logo
can be used for "upward" navigation
Action Bar - Sections



                What can I see?
                    view details
        (can have a navigation component)
     can include tabs, dropdowns, breadcrumbs
Action Bar - Sections



                      What can I do?
             action buttons (icons, text, or both)
           most important or frequently used actions

              new place for Search and Menu
Action Bar - Examples
Action Bar
Consistency Between Phone and Tablet
Action Bar - Antipatterns
     Ignoring the "Where - See - Do" Best Practice

      Button controls at the bottom of the screen

       Inconsistent across different applications
ActionBar Code Demo

https://github.com/vpulec/ActionBar-Demo
Backward Compatibility

ActionBar native support in Honeycomb and up

Remedy
• Compatibility Pack can be used for earlier
  version
• ActionBarSherlock (actionbarsherlock.com)
  makes the implementation easier
Backwards Compatibility Library




http://developer.android.com/sdk/compatibility-library.html
Action Bar - Summary

               Replaces traditional title bar

               Makes frequently used actions
               prominent

               Convenient means of handling menu
               and search

               Dedicated, persistent real estate

               Displays application icon together
               with the activity title
Action Bar

Multi-Pane Layout

    Carousel

  Quick Actions

   Dashboard

  Workspaces
Multi-Pane Layout
Multi-Pane Layout
Multi-Pane Layout - Orientation Change



 Preserve
 Functional
 Parity
Implementing Multi-Pane Layout

  Fragments... The Building Blocks



  The Resource System... The Dynamic Assembler



  Backwards Compatibility Library... support 1.6+
Fragments
Fragments                  Reusable Section of an Activity




  Master          Detail Fragment
  List Fragment
Fragment Basics


 Behavior

             .java


 Layout



             .xml
             or programatic...
             or not at all...
Resource System Changes

Old Layout Categories - Since 1.6:

res/layout/my-layout.xml             <-- Typical

Or

res/layout-land/my-layout.xml
res/layout-port/my-layout.xml
Resource System Changes

Honeycomb Layout Categories - 3.0 - 3.1:

Size        small, normal, large, xlarge
Orientation port, land

Ex:
res/layout/my-layout.xml
res/layout-xlarge-land/my-layout.xml
res/layout-xlarge-port/my-layout.xml
Resource System Changes

Honeycomb Layout Categories - 3.0 - 3.1:

Size        small, normal, large, xlarge
Orientation port, land

Ex:
res/layout/my-layout.xml
         Deprecated
res/layout-xlarge-land/my-layout.xml
res/layout-xlarge-port/my-layout.xml
Resource System Changes

New Layout Categories - 3.2+:

Allows Specific Screen Size Designation - Not Just Categories

res/layout/main_activity.xml                                                       Phones
res/layout-sw600dp/main_activity.xml                                               7" Tablets
res/layout-sw720dp/main_activity.xml                                               10" Tablets

sw = Smallest Width
w = Available Min Width
h = Available Min Height
http://developer.android.com/guide/practices/screens_support.html
http://developer.android.com/guide/practices/screens_support.html#DeclaringTabletLayouts
Multi-Pane Layout Code Demo


  https://github.com/peterpascale/FragmentExample
Action Bar

Multi-Pane Layout

    Carousel

  Quick Actions

   Dashboard

  Workspaces
Carousel - "Beyond the List"
               Break the Monotony of List Views
Carousel - "Beyond the List"
                   YouTube Video Wall
Carousel - Implementation


   CarouselView

     - Renderscript
     - Ready for Customization



   Gallery

     - Single Items, Single Images
     - Not Full Screen

             http://j.mp/io2011-carousel-sample
Action Bar

Multi-Pane Layout

    Carousel

  Quick Actions

   Dashboard

  Workspaces
Quick Actions

Easy access to contextual
actions

Practical even for limited real-
estate

User easily sees context even
when quick action is open
Action Bar

Multi-Pane Layout

    Carousel

  Quick Actions

   Dashboard

  Workspaces
Dashboard

 Good application entry point

  Takes a lot of real estate

 May appear that application
  has limited functionality

May be overwhelming to a new
            user
Action Bar

Multi-Pane Layout

    Carousel

  Quick Actions

   Dashboard

  Workspaces
Workspaces



 Useful when dealing with a lot of data

           Clear navigation
Thank You
Android UI Patterns
      New Patterns                Problem                       Solution                 Since         Phone     Tablet
Action Bar               Access to most common         Horizontal action bar on top        3.0          Yes       Yes
                         actions                       of the screen
Carousel                 Engaging way to select        scrolling 2D/3D carousel         3rd party       Yes       Yes
                         options                                                         (3.0+)
Multi-pane Layout View   Provide effective use of      Composite UI with reusable          3.0           No       Yes
                         large screens                 components                       (with 1.6
                                                                                      compatibility)




   Existing Patterns              Problem                       Solution                Since          Phone     Tablet
Dashboard                Application home screen       Main brander landing page          Any          In Some     No
                                                                                                        Cases

Quick Action Menu        Provide contextual actions    simple pop-up menu               3rd party       Yes      In Some
                         on a small screen                                               (2.0+)                   Cases


Workspaces               Displaying a lot of data on a horizontally scrollable tabs       Any           Yes        No
                         small screen
Resources

•   http://en.wikipedia.org/wiki/User_interface_design
•   http://www.androiduipatterns.com/
•   http://momentummobile.com/mobile-app-ui-ux-design.html
•   http://developer.android.com/guide/topics/ui/declaring-layout.html
•   http://developer.android.com/guide/practices/screens_support.html
•   http://developer.android.com/guide/practices/ui_guidelines/icon_design.html
•   http://www.google.com/events/io/2011/sessions/designing-and-implementing-android-uis-for-phones-
    and-tablets.html
•   http://www.donnfelker.com/downloads/AndroidTabletDevelopment.pdf
•   http://developer.android.com/guide/topics/fundamentals/fragments.html
•   http://j.mp/io2011-carousel-sample

More Related Content

Viewers also liked

Android ui patterns
Android ui patternsAndroid ui patterns
Android ui patternsMobile March
 
Whats New in Jelly Bean
Whats New in Jelly BeanWhats New in Jelly Bean
Whats New in Jelly Beanvpulec
 
Java 8
Java 8Java 8
Java 8vpulec
 
Java Web services
Java Web servicesJava Web services
Java Web servicesvpulec
 
Enterprise beans
Enterprise beansEnterprise beans
Enterprise beansvpulec
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 

Viewers also liked (6)

Android ui patterns
Android ui patternsAndroid ui patterns
Android ui patterns
 
Whats New in Jelly Bean
Whats New in Jelly BeanWhats New in Jelly Bean
Whats New in Jelly Bean
 
Java 8
Java 8Java 8
Java 8
 
Java Web services
Java Web servicesJava Web services
Java Web services
 
Enterprise beans
Enterprise beansEnterprise beans
Enterprise beans
 
How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 

Similar to Android UI Patterns: Action Bar, Multi-Pane Layouts, and More

2012/02/15 Android 4.0 UI Design Tips@happy designer meetup
2012/02/15 Android 4.0 UI Design Tips@happy designer meetup2012/02/15 Android 4.0 UI Design Tips@happy designer meetup
2012/02/15 Android 4.0 UI Design Tips@happy designer meetupJustin Lee
 
Android 4.0 UI Design Tips
Android 4.0 UI Design TipsAndroid 4.0 UI Design Tips
Android 4.0 UI Design TipsJustin Lee
 
Drupalcamp LA Aug 2009
Drupalcamp LA Aug 2009Drupalcamp LA Aug 2009
Drupalcamp LA Aug 2009Tom Deryckere
 
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_tabletsCường Doãn
 
An end-to-end experience of Windows Phone 7 development (Part 1)
An end-to-end experience of Windows Phone 7 development (Part 1)An end-to-end experience of Windows Phone 7 development (Part 1)
An end-to-end experience of Windows Phone 7 development (Part 1)rudigrobler
 
Whats New in Android
Whats New in AndroidWhats New in Android
Whats New in Androiddonnfelker
 
DanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsDanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsPaul Withers
 
Communication Design for the Mobile Experience
Communication Design for the Mobile ExperienceCommunication Design for the Mobile Experience
Communication Design for the Mobile ExperienceDavid Drucker
 
Briding the Gap between Desktop and Mobile publishing
Briding the Gap between Desktop and Mobile publishingBriding the Gap between Desktop and Mobile publishing
Briding the Gap between Desktop and Mobile publishingTom Deryckere
 
Android ActionBar Navigation reloaded
Android ActionBar Navigation reloadedAndroid ActionBar Navigation reloaded
Android ActionBar Navigation reloadedDominik Helleberg
 
Introduction to Flex Hero for Mobile Devices
Introduction to Flex Hero for Mobile DevicesIntroduction to Flex Hero for Mobile Devices
Introduction to Flex Hero for Mobile DevicesRyan Stewart
 
Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Patrick Lauke
 
QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10Almog Koren
 
Dori waldman android _course_2
Dori waldman android _course_2Dori waldman android _course_2
Dori waldman android _course_2Dori Waldman
 
Top Ten Tips for HTML5/Mobile Web Development
Top Ten Tips for HTML5/Mobile Web DevelopmentTop Ten Tips for HTML5/Mobile Web Development
Top Ten Tips for HTML5/Mobile Web DevelopmentSimon Guest
 
Interactive cues in flat design
Interactive cues in flat designInteractive cues in flat design
Interactive cues in flat designMing-Liang Liu
 

Similar to Android UI Patterns: Action Bar, Multi-Pane Layouts, and More (20)

Android UI Patterns
Android UI PatternsAndroid UI Patterns
Android UI Patterns
 
2012/02/15 Android 4.0 UI Design Tips@happy designer meetup
2012/02/15 Android 4.0 UI Design Tips@happy designer meetup2012/02/15 Android 4.0 UI Design Tips@happy designer meetup
2012/02/15 Android 4.0 UI Design Tips@happy designer meetup
 
Android 4.0 UI Design Tips
Android 4.0 UI Design TipsAndroid 4.0 UI Design Tips
Android 4.0 UI Design Tips
 
Drupalcamp LA Aug 2009
Drupalcamp LA Aug 2009Drupalcamp LA Aug 2009
Drupalcamp LA Aug 2009
 
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
 
An end-to-end experience of Windows Phone 7 development (Part 1)
An end-to-end experience of Windows Phone 7 development (Part 1)An end-to-end experience of Windows Phone 7 development (Part 1)
An end-to-end experience of Windows Phone 7 development (Part 1)
 
Whats New in Android
Whats New in AndroidWhats New in Android
Whats New in Android
 
DanNotes XPages Mobile Controls
DanNotes XPages Mobile ControlsDanNotes XPages Mobile Controls
DanNotes XPages Mobile Controls
 
Communication Design for the Mobile Experience
Communication Design for the Mobile ExperienceCommunication Design for the Mobile Experience
Communication Design for the Mobile Experience
 
Briding the Gap between Desktop and Mobile publishing
Briding the Gap between Desktop and Mobile publishingBriding the Gap between Desktop and Mobile publishing
Briding the Gap between Desktop and Mobile publishing
 
Swift
SwiftSwift
Swift
 
Android ActionBar Navigation reloaded
Android ActionBar Navigation reloadedAndroid ActionBar Navigation reloaded
Android ActionBar Navigation reloaded
 
Introduction to Flex Hero for Mobile Devices
Introduction to Flex Hero for Mobile DevicesIntroduction to Flex Hero for Mobile Devices
Introduction to Flex Hero for Mobile Devices
 
Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010Making your site mobile-friendly - DevCSI Reading 21.07.2010
Making your site mobile-friendly - DevCSI Reading 21.07.2010
 
QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10
 
Android UI Design Tips
Android UI Design TipsAndroid UI Design Tips
Android UI Design Tips
 
Mat Marquis - JQuery Mobile
Mat Marquis - JQuery MobileMat Marquis - JQuery Mobile
Mat Marquis - JQuery Mobile
 
Dori waldman android _course_2
Dori waldman android _course_2Dori waldman android _course_2
Dori waldman android _course_2
 
Top Ten Tips for HTML5/Mobile Web Development
Top Ten Tips for HTML5/Mobile Web DevelopmentTop Ten Tips for HTML5/Mobile Web Development
Top Ten Tips for HTML5/Mobile Web Development
 
Interactive cues in flat design
Interactive cues in flat designInteractive cues in flat design
Interactive cues in flat design
 

Recently uploaded

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 

Recently uploaded (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 

Android UI Patterns: Action Bar, Multi-Pane Layouts, and More

  • 1. Android UI Patterns Presented by Vladan Pulec Created by Vladan Pulec and Peter Pascale
  • 2. Agenda Android UI History Android 4 UI Highlights Android UI Patterns
  • 3. Android Version History Look and Feel Formalized 2009
  • 4. Android Version History 2010 Google IO Dashboard UI Pattern
  • 5. Android Version History 2011 Google IO Tablet Patterns No More Dashboard
  • 6. Android Version History Ice Cream Sandwich October 19 2010 Honeycomb UI - Unification No More Hardware Buttons
  • 8. Android Market Share Source: Nielsen (http://www.bgr.com/2011/12/15/smartphone-penetration-skyrockets-in-2011-iphone-becomes-no-1-handset/ )
  • 9. Android Versions - Reality Source: developer.android.com As of March 5, 2012
  • 10. UI Design Pattern Goals Image Source: http://www.flickr.com/photos/jdhancock/5138860024/
  • 11. Tablet vs. Phone User Experience Users hold and interact with phones and tablets differently UI needs to be adaptive to support user interaction
  • 12. UI Design Goals Related to Patterns Stay Consistent Use Visual Hierarchy Value Simplicity Pay Attention to Patterns Image Source: http://www.flickr.com/photos/45574318@N00/5370376951/
  • 13. Android 4.0 UI Features Simplified Look and Feel Unified Tablet/Phone Platform System Bar and Action Bar Virtual Navigation Buttons No Hardware Buttons Image Source: http://www.flickr.com/photos/lwallenstein/3870027760/sizes/m/in/photostream/
  • 14. Navigation in Android 4.0 Software Navigation Buttons System Back System Home Recents No Search or Menu
  • 15. Android UI Patterns Action Bar Multi-Pane Layout Carousel Quick Actions Dashboard Workspaces
  • 16. Action Bar Multi-Pane Layout Carousel Quick Actions Dashboard Workspaces
  • 17. Action Bar Dedicated Real Estate at the Top of Each Screen Make Frequent Actions Prominent Support Navigation Indicate Current Location in App Consistent Between Tablets and Phones Provide Branding
  • 18. Action Bar - Sections Where am I? application icon or logo can be used for "upward" navigation
  • 19. Action Bar - Sections What can I see? view details (can have a navigation component) can include tabs, dropdowns, breadcrumbs
  • 20. Action Bar - Sections What can I do? action buttons (icons, text, or both) most important or frequently used actions new place for Search and Menu
  • 21. Action Bar - Examples
  • 22. Action Bar Consistency Between Phone and Tablet
  • 23. Action Bar - Antipatterns Ignoring the "Where - See - Do" Best Practice Button controls at the bottom of the screen Inconsistent across different applications
  • 25. Backward Compatibility ActionBar native support in Honeycomb and up Remedy • Compatibility Pack can be used for earlier version • ActionBarSherlock (actionbarsherlock.com) makes the implementation easier
  • 27. Action Bar - Summary Replaces traditional title bar Makes frequently used actions prominent Convenient means of handling menu and search Dedicated, persistent real estate Displays application icon together with the activity title
  • 28. Action Bar Multi-Pane Layout Carousel Quick Actions Dashboard Workspaces
  • 31. Multi-Pane Layout - Orientation Change Preserve Functional Parity
  • 32. Implementing Multi-Pane Layout Fragments... The Building Blocks The Resource System... The Dynamic Assembler Backwards Compatibility Library... support 1.6+
  • 34. Fragments Reusable Section of an Activity Master Detail Fragment List Fragment
  • 35. Fragment Basics Behavior .java Layout .xml or programatic... or not at all...
  • 36. Resource System Changes Old Layout Categories - Since 1.6: res/layout/my-layout.xml <-- Typical Or res/layout-land/my-layout.xml res/layout-port/my-layout.xml
  • 37. Resource System Changes Honeycomb Layout Categories - 3.0 - 3.1: Size small, normal, large, xlarge Orientation port, land Ex: res/layout/my-layout.xml res/layout-xlarge-land/my-layout.xml res/layout-xlarge-port/my-layout.xml
  • 38. Resource System Changes Honeycomb Layout Categories - 3.0 - 3.1: Size small, normal, large, xlarge Orientation port, land Ex: res/layout/my-layout.xml Deprecated res/layout-xlarge-land/my-layout.xml res/layout-xlarge-port/my-layout.xml
  • 39. Resource System Changes New Layout Categories - 3.2+: Allows Specific Screen Size Designation - Not Just Categories res/layout/main_activity.xml Phones res/layout-sw600dp/main_activity.xml 7" Tablets res/layout-sw720dp/main_activity.xml 10" Tablets sw = Smallest Width w = Available Min Width h = Available Min Height http://developer.android.com/guide/practices/screens_support.html http://developer.android.com/guide/practices/screens_support.html#DeclaringTabletLayouts
  • 40. Multi-Pane Layout Code Demo https://github.com/peterpascale/FragmentExample
  • 41. Action Bar Multi-Pane Layout Carousel Quick Actions Dashboard Workspaces
  • 42. Carousel - "Beyond the List" Break the Monotony of List Views
  • 43. Carousel - "Beyond the List" YouTube Video Wall
  • 44. Carousel - Implementation CarouselView - Renderscript - Ready for Customization Gallery - Single Items, Single Images - Not Full Screen http://j.mp/io2011-carousel-sample
  • 45. Action Bar Multi-Pane Layout Carousel Quick Actions Dashboard Workspaces
  • 46. Quick Actions Easy access to contextual actions Practical even for limited real- estate User easily sees context even when quick action is open
  • 47. Action Bar Multi-Pane Layout Carousel Quick Actions Dashboard Workspaces
  • 48. Dashboard Good application entry point Takes a lot of real estate May appear that application has limited functionality May be overwhelming to a new user
  • 49. Action Bar Multi-Pane Layout Carousel Quick Actions Dashboard Workspaces
  • 50. Workspaces Useful when dealing with a lot of data Clear navigation
  • 52. Android UI Patterns New Patterns Problem Solution Since Phone Tablet Action Bar Access to most common Horizontal action bar on top 3.0 Yes Yes actions of the screen Carousel Engaging way to select scrolling 2D/3D carousel 3rd party Yes Yes options (3.0+) Multi-pane Layout View Provide effective use of Composite UI with reusable 3.0 No Yes large screens components (with 1.6 compatibility) Existing Patterns Problem Solution Since Phone Tablet Dashboard Application home screen Main brander landing page Any In Some No Cases Quick Action Menu Provide contextual actions simple pop-up menu 3rd party Yes In Some on a small screen (2.0+) Cases Workspaces Displaying a lot of data on a horizontally scrollable tabs Any Yes No small screen
  • 53. Resources • http://en.wikipedia.org/wiki/User_interface_design • http://www.androiduipatterns.com/ • http://momentummobile.com/mobile-app-ui-ux-design.html • http://developer.android.com/guide/topics/ui/declaring-layout.html • http://developer.android.com/guide/practices/screens_support.html • http://developer.android.com/guide/practices/ui_guidelines/icon_design.html • http://www.google.com/events/io/2011/sessions/designing-and-implementing-android-uis-for-phones- and-tablets.html • http://www.donnfelker.com/downloads/AndroidTabletDevelopment.pdf • http://developer.android.com/guide/topics/fundamentals/fragments.html • http://j.mp/io2011-carousel-sample

Editor's Notes

  1. Peter
  2. Peter Android UI as a bit of a moving target. Android 4 - the focus Android UI patterns in the context of Android 4
  3. Peter UI layout established default color schemes boxy immature UI patterns
  4. Peter Dashboard pattern introduced Action bars implemented inconsistently
  5. Peter Dashboard is being replaced with action bar
  6. Peter UI unification lesson learned - UI keeps constantly evolving and applications need to adjust hardware navigation going away
  7. Peter
  8. Peter/Vladan diversified support for multiple versions
  9. Vladan
  10. Vladan phones - one hand holds the device, the other interacts tablets - Because of the size and the weight of tablets, you might design your screens differently to accept interactions on the left and on the right portions of the screen. Ideally, some users would just use their left and right thumbs to interact with your app. Google SDK supports reuse between devices of different screen sizes
  11. Vladan Google Emphasizes Platform Consistency user should feel in control http://momentummobile.com/mobile-app-ui-ux-design.html
  12. Vladan Support in Action Bar or other mechanism Don&apos;t Assume Search Hard Key Unified UI toolkit: A single set of UI components, styles, and capabilities for phones, tablets, and other devices. Rich communication and sharing: New social and calendar APIs, Android Beam for NFC-based instant sharing, Wi-Fi Direct support, Bluetooth Health Device Profile support. Deep interactivity and customization: Improved notifications, lockscreen with camera and music controls, and improved app management in the launcher. New graphics, camera, and media capabilities: Image and video effects, precise camera metering and face detection, new media codecs and containers. Interface and input: Hardware-accelerated 2D drawing, new grid-based layout, improved soft keyboard, spell-checker API, stylus input support, and better mouse support.
  13. Vladan Navigation to Search and Menu items must be supported in the application UI - These functions have to find a place in the UI.
  14. Vladan actions - context sensitive actions, most used actions for each screen  navigation tabs incorporated directly into the bar search button throughout an application Honeycomb tables (and future Ice Cream Sandwich phones) lack physical navigation buttons Contextual actions can be used based on user&apos;s action on the screen (ie. selecting text or an email message) overflow - less commonly used actions, tablets do not have &amp;quot;Menu&amp;quot; button, Overflow menu replaces it Branding and Home Access - excellent spot for application logo, selecting the logo should either send users to the home screen, go back within the application
  15. close to hardware controls
  16. Peter
  17. Peter Take Advantage of Tablet Real Estate Consolidate Multiple Phone Screens into One Layout Master - Detail
  18. Peter Android goal: Create a single APK (android exe) for both tablet and phone app. Ambitious, but Android provides a number of facilities  to support this. First - Fragments You can think of a fragment as a modular section of an activity, which has its own lifecycle, receives its own input events, and which you can add or remove while the activity is running. You can combine multiple fragments in a single activity to build a multi-pane UI and reuse a fragment in multiple activities. 
  19. Peter Android goal: Create a single APK (android exe) for both tablet and phone app. Ambitious, but Android provides a number of facilities  to support this. First - Fragments You can think of a fragment as a modular section of an activity, which has its own lifecycle, receives its own input events, and which you can add or remove while the activity is running. You can combine multiple fragments in a single activity to build a multi-pane UI and reuse a fragment in multiple activities. 
  20. Fragment - represents a behavior or a portion of user interface in an Activity  Can combine multiple fragments in a single activity to build a multi-pane UI and reuse a fragment in multiple activities.  modular section of an activity,  which has its own lifecycle,  receives its own input events,  you can add or remove while the activity is running 
  21. Peter Honeycomb added new layout categories which you could combine with sizes.
  22. Peter
  23. Peter
  24. Vladan
  25. Vladan
  26. Vladan
  27. Vladan/Peter categorize the patterns into categories-new, relevant, dated new patterns - action bar - multipane - carousel Still good - dashboard - busy indicator - quick action menu - workspaces Not so good - action drawer - dynamic list - look what this is -