6dacb26b07
Change-Id: I3fc95b65515ae75d6c74a62f9614f994cfb83df3
82 lines
3.1 KiB
Plaintext
82 lines
3.1 KiB
Plaintext
page.title=Compatibility
|
|
|
|
@jd:body
|
|
|
|
<div id="qv-wrapper">
|
|
<div id="qv">
|
|
<h2>In this document</h2>
|
|
<ol>
|
|
<li><a href="#materialtheme">Material Theme</a></li>
|
|
<li><a href="#layouts">Layouts</a></li>
|
|
<li><a href="#widgets">UI Widgets</a></li>
|
|
<li><a href="#animation">Animation APIs</a></li>
|
|
</ol>
|
|
</div>
|
|
</div>
|
|
|
|
<p>The new material design features (like the material theme and activity transitions) are only
|
|
available in the Android L Developer Preview. However, you can design your apps to make use of
|
|
these features when running on devices with the Android L Developer Preview and still be
|
|
compatible with previous releases of Android.</p>
|
|
|
|
|
|
<h2 id="materialtheme">Material Theme</h2>
|
|
|
|
<p>The material theme is only available in the Android L Developer Preview. To configure your
|
|
app to use the material theme on devices running the Android L Developer Preview and an older
|
|
theme on devices running earlier versions of Android:</p>
|
|
|
|
<ol>
|
|
<li>Define a theme that inherits from an older theme (like Holo) in
|
|
<code>res/values/styles.xml</code>.</li>
|
|
<li>Define a theme with the same name that inherits from the material theme in
|
|
<code>res/values-v21/styles.xml</code>.</li>
|
|
<li>Set this theme as your app's theme in the manifest file.</li>
|
|
</ol>
|
|
|
|
<p class="note"><strong>Note:</strong> If you do not provide an alternative theme in this manner,
|
|
your app will not run on earlier versions of Android.</p>
|
|
|
|
|
|
<h2 id="layouts">Layouts</h2>
|
|
|
|
<p>If the layouts that you design according to the material design guidelines do not use any
|
|
of the new XML attributes from the Android L Developer Preview, they will work on previous
|
|
versions of Android. Otherwise, you can provide alternative layouts. You can also provide
|
|
alternative layouts to customize how your app looks on earlier versions of Android.</p>
|
|
|
|
<p>Create your layout files for the Android L Developer Preview inside <code>res/layout-v21/</code>
|
|
and your alternative layout files for earlier versions of Android inside <code>res/layout/</code>.
|
|
Alternative layouts have the same file name.</p>
|
|
|
|
<p>To avoid duplication of code, define your styles inside <code>res/values/</code> and modify the
|
|
styles in <code>res/values-v21/</code> for the new APIs.</p>
|
|
|
|
|
|
<h2 id="widgets">UI Widgets</h2>
|
|
|
|
<p>The <code>RecyclerView</code> and <code>CardView</code> widgets are included in the Android L
|
|
Developer Preview Support Library, so they are available in earlier versions of Android with
|
|
these limitations:</p>
|
|
|
|
<ul>
|
|
<li><code>CardView</code> falls back to a programmatic shadow implementation using additional padding.</li>
|
|
<li><code>CardView</code> does not clip its children views that intersect with rounded corners.</li>
|
|
</ul>
|
|
|
|
<p>These limitations do not apply to the Android L Developer Preview.</p>
|
|
|
|
|
|
<h2 id="animation">Animation APIs</h2>
|
|
|
|
<p>The following new APIs are only available in the Android L Developer Preview:</p>
|
|
|
|
<ul>
|
|
<li>Activity transitions</li>
|
|
<li>Touch feedback</li>
|
|
<li>Reveal animations</li>
|
|
<li>Path-based animations</li>
|
|
</ul>
|
|
|
|
<p>To preserve compatibility with earlier verisons of Android, check the system version at
|
|
runtime before you invoke these APIs.</p> |