summaryrefslogtreecommitdiffstats
path: root/docs/html/preview/material/index.jd
blob: d9a276f70c638eacc06b0a833832f0fb28fa331e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
page.title=Material Design
page.type=design

@jd:body

<p itemprop="description">The Android L Developer Preview includes support for material design
apps. Material design is a comprehensive guide for visual, motion, and interaction design across
platforms and devices. To use material design in your Android apps, follow the guidelines defined
in the <a href="http://www.google.com/design/spec">material design specification</a> and use the
new components and functionality available in the Android L Developer Preview.</p>

<p>The Android L Developer Preview provides the following elements for you to build material
design apps:</p>

<ul>
  <li>A new theme</li>
  <li>New widgets for complex views</li>
  <li>New APIs for custom shadows and animations</li>
</ul>


<h3>Material Theme</h3>

<p>The material theme provides a new style for your app, system widgets that let you set
their color palette, and default animations for touch feedback and activity transitions.</p>

<!-- two columns -->
<div style="width:700px;margin-top:25px;margin-bottom:20px">
<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
  <img src="{@docRoot}preview/material/images/MaterialDark.png" width="500" height="238"/>
  <div style="width:140px;margin:0 auto">
  <p style="margin-top:8px">Dark Material theme</p>
  </div>
</div>
<div style="float:left;width:250px;margin-right:0px;">
  <img src="{@docRoot}preview/material/images/MaterialLight.png" width="500" height="238"/>
  <div style="width:140px;margin:0 auto">
  <p style="margin-top:8px">Light Material theme</p>
  </div>
</div>
<br style="clear:left"/>
</div>


<h3>New Widgets</h3>

<p>The Android L Developer Preview includes two new widgets for displaying complex views:</p>

<!-- two columns -->
<div style="width:700px;margin-top:25px;margin-bottom:20px">
<div style="float:left;width:250px;margin-left:40px;margin-right:60px;">
  <img src="{@docRoot}preview/material/images/list_mail.png" width="500" height="426"/>
  <p>The new <code>RecyclerView</code> widget is a more advanced version of <code>ListView</code>
  that provides performance improvements for dynamic views and is easier to use.</p>
</div>
<div style="float:left;width:250px;margin-right:0px;">
  <img src="{@docRoot}preview/material/images/card_travel.png" width="500" height="426"/>
  <p>The new <code>CardView</code> widget lets you display important pieces of information inside
  cards that have a consistent look and feel.</p>
</div>
<br style="clear:left"/>
</div>


<h3>View Shadows</h3>

<p>In addition to the X and Y properties, views in the Android L Developer Preview have a Z
property. This new property represents the elevation of a view, which determines:</p>

<ul>
<li>The size of the shadow - Views with higher Z values cast bigger shadows.</li>
<li>The drawing order - Views with higher Z values appear on top of other views.</li>
</ul>

<div style="width:290px;margin-left:35px;float:right">
  <div class="framed-nexus5-port-span-5">
  <video class="play-on-hover" autoplay>
    <source src="/preview/material/videos/ContactsAnim.mp4"/>
    <source src="/preview/material/videos/ContactsAnim.webm"/>
    <source src="/preview/material/videos/ContactsAnim.ogv"/>
  </video>
  </div>
  <div style="font-size:10pt;margin-left:20px;margin-bottom:30px">
    <em>Click on the device screen to replay the movie</em>
  </div>
</div>

<h3>Animations</h3>

<p>The Android L Developer Preview provides new APIs that let you create custom animations for
touch feedback in UI controls, view state changes, and activity transitions.</p>

<p>The new animation APIs let you:</p>

<ul>
<li style="margin-bottom:15px">
Respond to touch events in your views with <strong>touch feedback</strong> animations.
</li>
<li style="margin-bottom:15px">
Hide and show views with <strong>reveal effect</strong> animations.
</li>
<li style="margin-bottom:15px">
Switch between activities with custom <strong>activity transition</strong> animations.
</li>
<li style="margin-bottom:15px">
Create more natural animations with <strong>curved motion</strong>.
</li>
<li style="margin-bottom:15px">
Animate changes in one or more view properties with <strong>view state change</strong> animations.
</li>
<li style="margin-bottom:15px">
Show animations in <strong>state list drawables</strong> between view state changes.
</li>
</ul>

<p>Touch feedback animations are built into several standard views, such as buttons. The new APIs
let you customize these animations and add animations to your custom views.</p>


<h3>New Capabilities for Drawables</h3>

<p>The Android L Developer Preview supports <strong>drawable tinting</strong>: you can define
bitmaps as an alpha mask and tint them using a color resource. You create these assets only
once and color each instance to match your theme. Drawables also now support specifying most XML
properties as <strong>theme attributes</strong>.</p>

<p>The Android L Developer Preview Support Library includes a <strong>color extraction</strong>
library that lets you automatically extract prominent colors from a bitmap image.</p>