Senin, 26 Juni 2017

web app with material design


web app with material design

roman nurik: hi. i'm roman, and i helped designand develop the google i/o 2014 android app. in this video, i'll dive intohow we use the new material design approach tobuild a visually striking, consistent,and adaptive android app for this year's conference. so what exactly ismaterial design? at first glance, it may justseem like a new visual design

language full of brightcolors and subtle shadows. but it's reallymuch more than that. it's a system that wepioneered that informs all of our visual interactionand motion design decisions across mobile, desktop,wearables, and beyond. now every year atgoogle i/o, our team spends several whole monthsworking on the conference app. we do this for two reasons. first, it's obviouslya great companion

for the developers attendingthe event and those tuning in at home. second, and arguablymore importantly, it serves as a referenceapp for android design and development best practices. now, this year's app usesmaterial design and features of the l developer preview topresent content in a rational, consistent, adaptive,and beautiful way. let's take a look at some ofthe decisions and outcomes that

informed the app's design. in material design,surfaces and shadows play an importantrole in conveying the structure of your app. the material designspec outlines a set of layout principles thathelp guide decisions like where shadows should appear andwhat is drawn on each surface. for example, here'sour first iteration of tabs in the myschedule screen.

it was problematic fora number of reasons. the single shadowbelow the action bar conveys that there aretwo sheets of paper, one for the actionbar and another for the tabs andschedule contents. the problem is that thebottom sheet is too complex. the ink that representsthe contents of a surface should be pretty simple. here, ink is doing too muchwork, painting not only

text and icons but bordersand background colors. the result is visual noise. our final iterationwas much stronger, creating a clear separationbetween chrome and content, and letting the inkfocus on painting only the important stuff--things like text, icons, and accent strips. another area where surfacesplayed a role in our design thinking was the detail screen.

in our first release,as you scrolled, the top banner cross-fadedbetween the session image and the session color. our concern thoughwas that this design bent the physics ofmaterial design too far. it's as if the textwas sliding along a surface whosetransparency changed throughout the animation. a better approach, whichwe introduced in an update

to the app on june 25, wasto create a shorter surface below the image onto whichthe title text was printed. this surface had amore stable opacity. before scrolling, the surfaceis adjacent to the one containing the body text,forming what we call a scene. and as you scroll, this surfaceand the floating action button attached to it risesabove the body text, allowing the text toscroll beneath it. this aligns betterwith the physics

in the world of material design. and the end result is a morecoherent visual interaction and motion story for our users. now, another key principleof material design is that interfaces should bebold, graphic, and intentional, and that the foundationalelements of print design should guide visual treatments. color plays a huge rolein making that happen. in material design, uicolor palettes generally

consist of one primaryand one accent color. large color fields likethe action bar background, for example, take on the 500shade of the primary color, while smaller areaslike the status bar can use a darker shade,like the 700 value. the accent color is used moresubtly throughout the app to call attentionto key elements. the resulting juxtapositionof a tamer primary color and a brighter accentcolor gives the app

a bold, colorful lookwithout overwhelming the app's actual content. in the i/o app,we actually chose to use two accent colorsused in various situations. most accents were pink 500,while the more conservative light blue 500 was a betterfit for the add to schedule button, which was oftenadjacent to session colors. and speaking of session colors,we color the detail screen based on the session topic.

for example, androidsessions are green. this gives the screen thatbold and intentional look. and when choosingour topic colors, we used a materialdesign color palette which contained dozensof great color options. we also needed to make surethat each color contrasted well enough with the floatingaction button and session images. here's our test graphic thatlet us visualize this contrast.

finally, we ensuredthat topic colors had a consistent brightness. desaturating our test filewhen choosing the colors helped in that process. now another foundationalelement of print design that's important insuccessful material design is layout, andmore specifically, margins and whatwe call keylines. now from previousyears of the i/o app,

we'd already beenaccustomed to using a 4 dp grid for sizing things. for example, our buttons andlist items were 48 dps tall. however, the guidance onkeylines for material design was new to us. after we started adhering tothe spec and, in particular, aligning titles and othertexts to that 72 dp keyline, we immediately felt thatclean, print-like rhythm in our screens.

adhering to the keylineallowed for very fast scanning of ui text and informationon our screens. gestalt principles for the win. now while we're onthe subject of layout, remember that material designapplies across many device types. it's right therein the principles. a single underlyingdesign system organizes interactions in space.

each device reflectsa different view of the same underlying system. now luckily, the specoffers some great solutions for designing acrossmultiple screen sizes. for example, many of thescreens in the i/o app represent collectionsof sessions. for these situations, the systemoffers a number of containers, like lists, grids, and cards. each of these can be usedacross different screen sizes

to representcollections of data. we originallythought to use cards to represent session items. it's a pretty natural choice. but in some cases, wewanted to conserve space by overlaying text and images. this simpler, morehomogeneous presentation was less appropriate for cards. the card shadowsin corners would

hinder the scanabilityin this context. we thought a grid wouldbe a better choice here. with grids, we could varythe number of columns based on available screen width. and each grid tile could takeon different aspect ratios. the resulting presentationwas very flexible and worked great, notonly on phones but also 7-inch and 10-inch tablets. finally, there is a crucialelement that ties everything

together, and that's motion. while a big part of the motionstory of material design is in transitionsbetween screens, apps can trulydelight users when motion is used in waysbeyond the obvious. let's take a look at someof the delightful motion we introduced in the app. first, touch feedback ripples. they're super, super satisfying.

they're also built in as soonas you switch to the material theme in l. but wewanted to make sure that they looked reallygood on any background. so we customized ripplecolors for many elements to ensure the ripples werevisible but still subtle, regardless of the background. we also used both thebounded and unbounded styles where appropriate. but my personal favoritedetail hands down in the app

is the floating buttonthat adds or removes a session to your schedule. on touch, a little ink ripplereveals a new background color, and the plus symbol spins andtransforms into a check mark. finally, while it's a bit hardto tell in this animation, if you press andhold the button, its shadow grows,almost like the button is lifting up tomeet your finger. the end result isyou end up pressing

the button a few times just tosee its delightful tricks again and again. i do it many times a day. so those were some ofthe design decisions we made for the i/o2014 android app. material designinfluenced everything, including surfaces, shadows,color, layout, and motion in the app. overall, the systemplayed a huge role

in helping us create a visuallystriking, consistent, and adaptive android appfor the conference. now make sure to checkthe material design spec at google.com/design for moreon this new design approach and how it can helpyou improve your apps. and if you're anandroid developer, check out the code forthe i/o app on github to see how the design isimplemented both for android l and for earlier versions.

thanks.

web app with material design Tutorial Creating 100% Pure CSS Contents Slider

Tidak ada komentar:

Posting Komentar