2012-03-06 12:26:15 -08:00
|
|
|
|
page.title=Touch Feedback
|
2013-04-12 14:00:30 -07:00
|
|
|
|
page.tags="input","button"
|
2012-03-06 12:26:15 -08:00
|
|
|
|
@jd:body
|
|
|
|
|
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<div class="layout-content-row" style="margin-bottom: -100px">
|
2012-03-06 12:26:15 -08:00
|
|
|
|
<div class="layout-content-col span-7">
|
|
|
|
|
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<p>Use illumination and dimming to respond to touches, reinforce the resulting behaviors
|
|
|
|
|
of gestures, and indicate what actions are enabled and disabled.</p>
|
|
|
|
|
|
|
|
|
|
<p><strong>Be responsive to touches in a gentle way</strong>. Whenever a user touches an
|
|
|
|
|
actionable area in your app, let them know the app is "listening" by providing a visual
|
|
|
|
|
response. Make it subtle —just slightly lighter or darker than the untouched color. This
|
|
|
|
|
provides two benefits:</p>
|
|
|
|
|
|
|
|
|
|
<ul>
|
|
|
|
|
<li><a href="{@docRoot}design/get-started/principles.html#sprinkle-encouragement">Sprinkles
|
|
|
|
|
of encouragement</a> are more pleasant than jolts.</li>
|
|
|
|
|
<li>Incorporating <a href="{@docRoot}design/style/branding.html">your branding</a> is much
|
|
|
|
|
easier because the default touch feedback works with whatever hue you choose.</li>
|
|
|
|
|
</ul>
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
2013-11-05 19:06:27 -08:00
|
|
|
|
</div>
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
2013-11-05 19:06:27 -08:00
|
|
|
|
<div class="layout-content-col span-6" style="float:right;">
|
2013-10-11 16:09:40 -07:00
|
|
|
|
<video class="play-on-hover" width="268" height="442" autoplay style="border:1px solid #ddd;background-color:#f9f9f9;" poster="">
|
2013-11-05 19:06:27 -08:00
|
|
|
|
<source src="{@docRoot}design/media/touch_feedback.mp4" type="video/mp4">
|
|
|
|
|
<source src="{@docRoot}design/media/touch_feedback.webm" type="video/webm">
|
|
|
|
|
<source src="{@docRoot}design/media/touch_feedback.ogv" type="video/ogg">
|
|
|
|
|
</video>
|
|
|
|
|
<div class="figure-caption">
|
|
|
|
|
<div style="color:#a3a3a3;margin-left:130px;"><em>Click image to replay...</em></div>
|
2012-03-06 12:26:15 -08:00
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<h4 style="clear:both;">States</h4>
|
|
|
|
|
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
|
|
|
|
<div class="vspace size-1"> </div>
|
|
|
|
|
|
|
|
|
|
<img src="{@docRoot}design/media/touch_feedback_states.png">
|
|
|
|
|
<div class="figure-caption">
|
2013-10-19 11:43:41 -07:00
|
|
|
|
Most of Android's UI elements have touch feedback built in, including
|
|
|
|
|
states that indicate whether touching the element will have any effect.
|
2012-03-06 12:26:15 -08:00
|
|
|
|
</div>
|
|
|
|
|
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<div class="vspace size-3"> </div>
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
|
|
|
|
<div class="layout-content-row">
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<div class="layout-content-col span-6">
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<h4>Communication</h4>
|
|
|
|
|
<p>When your objects react to more complex gestures, help users
|
|
|
|
|
understand what the outcome will be.</p>
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<p>In Recents, when a user starts swiping a thumbnail left or right, it
|
|
|
|
|
begins to dim. This helps the user understand that swiping will cause the
|
|
|
|
|
item to be removed.</p>
|
2012-03-06 12:26:15 -08:00
|
|
|
|
</div>
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<div class="layout-content-col span-7">
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
|
|
|
|
<img src="{@docRoot}design/media/touch_feedback_manipulation.png">
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<div class="vspace size-3"> </div>
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
|
|
|
|
<div class="layout-content-row">
|
|
|
|
|
<div class="layout-content-col span-6">
|
|
|
|
|
|
|
|
|
|
<img src="{@docRoot}design/media/touch_feedback_communication.png">
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<p><em>If a user attempts to scroll past the last home screen panel, the screen
|
|
|
|
|
content tilts to the right to indicate that further navigation in this direction
|
|
|
|
|
isn’t possible.</em></p>
|
2012-03-06 12:26:15 -08:00
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
<div class="layout-content-col span-6">
|
|
|
|
|
|
|
|
|
|
<h4>Boundaries</h4>
|
2013-10-19 11:43:41 -07:00
|
|
|
|
<p>
|
|
|
|
|
When users try to scroll past the beginning or end of a scrollable area,
|
|
|
|
|
communicate the boundary with a visual cue. Many of Android's scrollable UI
|
|
|
|
|
widgets, like lists and grid lists, have support for boundary feedback built
|
|
|
|
|
in. If you’re building custom widgets, keep boundary feedback in mind and
|
|
|
|
|
provide it from within your app.
|
|
|
|
|
</p>
|