Upgrade to Pro — share decks privately, control downloads, hide ads and more …

New material design patterns

Soham Mondal
December 03, 2014

New material design patterns

Soham Mondal

December 03, 2014
Tweet

More Decks by Soham Mondal

Other Decks in Technology

Transcript

  1. Agenda What is Material Design and philosophy
 Bold, graphic and

    intentional
 Motion 
 Elements
 Patterns
 What do you need to get started
 Practice
  2. Goals of Material design - create a new visual language

    that takes the classic principles of good design and combines it with a) technology and b) science - create a platform that works across different devices
  3. www.google.com/design - overall design guidelines, this is just a subset


    - all material design images/videos are attributed to the google material design guide (c) google
  4. What is Material Material design is a comprehensive guide for

    visual, motion, and interaction design across platforms and devices.
  5. A situation where an object’s sensory characteristics intuitively imply its

    functionality and use. For example, a knob affords twisting, and perhaps pushing
 A cord affords pulling. As a relation, an affordance exhibits the possibility of some action, and is not a property of either an organism or its environment alone. Affordance
  6. What is Material Material design is a comprehensive guide for

    visual, motion, and interaction design across platforms and devices. Surfaces and edges of the material provide visual cues that are grounded in reality. The use of familiar tactile attributes helps users quickly understand affordances. Inspired by paper/ink
  7. Bold, graphic, intentional Use elements of print based design: typography,

    grid, space, scale, color, imagery to create hierarchy, meaning and focus All these elements should provide a waypoint to the user
  8. Authentic motion Motion in the world of material design is

    not only beautiful, it builds meaning about the spatial relationships, functionality, and intention of the system.
  9. Motion - Use motion to express continuity in the environment


    - So motion is meaningful and appropriate to help the user focus
 - Give feedback so that the user knows that actions have happened
  10. <resources>      <!-­‐-­‐  inherit  from  the  material  theme  -­‐-­‐>

         <style  name="AppTheme"  parent="android:Theme.Material">          <!-­‐-­‐  Main  theme  colors  -­‐-­‐>          <!-­‐-­‐      your  app  branding  color  for  the  app  bar  -­‐-­‐>          <item  name="android:colorPrimary">@color/primary</item>          <!-­‐-­‐      darker  variant  for  the  status  bar  and  contextual  app  bars  -­‐-­‐>          <item  name="android:colorPrimaryDark">@color/primary_dark</item>          <!-­‐-­‐      theme  UI  controls  like  checkboxes  and  text  fields  -­‐-­‐>          <item  name="android:colorAccent">@color/accent</item>      </style>   </resources> API 21+ (Also in support library)
  11. <Button          android:layout_width="wrap_content"        

     android:layout_height="wrap_content"          android:text="SHARE"          style="?android:attr/borderlessButtonStyle"   />   API 21+
  12. <com.getbase.floatingactionbutton.FloatingActionButton                  android:id="@+id/pink_icon"

                     android:layout_width="wrap_content"                  android:layout_height="wrap_content"                  fab:fab_icon="@drawable/ic_fab_star"                  fab:fab_colorNormal="@color/pink"                  fab:fab_colorPressed="@color/pink_pressed"                  android:layout_alignParentBottom="true"                  android:layout_centerHorizontal="true"                  android:layout_marginBottom="16dp"/>   FutureSimple: API 7+
  13. <com.melnykov.fab.FloatingActionButton                  android:id="@+id/add"

                     android:layout_width="wrap_content"                  android:layout_height="wrap_content"                  android:layout_margin="16dp"                  android:src="@drawable/add"                  fab:fab_colorNormal="@color/white"                  fab:fab_colorPressed="@color/primary"                  fab:fab_colorRipple="@color/accent"                  android:layout_alignParentRight="true"                  android:layout_alignParentBottom="true"/> makovkastar: API 7+
  14. <!-­‐-­‐  A  CardView  that  contains  a  TextView  -­‐-­‐>    

         <android.support.v7.widget.CardView                  xmlns:card_view="http://schemas.android.com/apk/res-­‐auto"                  android:id="@+id/card_view"                  android:layout_gravity="center"                  android:layout_width="200dp"                  android:layout_height="200dp"                  card_view:cardCornerRadius="4dp">                      <TextView                          android:id="@+id/info_text"                          android:layout_width="match_parent"                          android:layout_height="match_parent"  />          </android.support.v7.widget.CardView> API 7+ (in support library)
  15. Resources - Material design icons: https://github.com/google/material-design-icons
 - Layout templates (illustrator)

    http://www.google.com/design/spec/ resources/layout-templates.html#layout-templates-tablet
 - Sticker sheets and icons: http://www.google.com/design/spec/ resources/sticker-sheets-icons.html# 
 - Google Design http://www.google.com/design/ 
 - Google IO 2014 Design talks
 - Roman Guy’s IO 2014 talk with code: http://goo.gl/B8kEbs