blob: 87cd0b0fe8e6d9137b708bc6ea99b229a8c44791 [file] [log] [blame]
page.title=Creating Custom Views
page.tags=widgets,ui,layout
trainingnavtop=true
startpage=true
@jd:body
<div id="tb-wrapper">
<div id="tb">
<h2>Dependencies and prerequisites</h2>
<ul>
<li>Android 2.1 (API level 7) or higher</li>
</ul>
<h2>You should also read</h2>
<ul>
<li><a href="{@docRoot}guide/topics/ui/custom-components.html">Custom Components</a>
</li>
<li><a href="{@docRoot}guide/topics/ui/ui-events.html">Input Events</a></li>
<li><a href="{@docRoot}guide/topics/graphics/prop-animation.html">Property
Animation</a></li>
<li><a href="{@docRoot}guide/topics/graphics/hardware-accel.html">Hardware
Acceleration</a></li>
<li><a href="{@docRoot}guide/topics/ui/accessibility/index.html">
Accessibility</a> developer guide</li>
</ul>
<h2>Try it out</h2>
<div class="download-box">
<a href="{@docRoot}shareables/training/CustomView.zip"
class="button">Download the sample</a>
<p class="filename">CustomView.zip</p>
</div>
</div>
</div>
<p>
The Android framework has a large set of {@link android.view.View} classes for
interacting with the user and displaying various
types of data. But
sometimes your app has unique needs that arent covered by the built-in views. This class shows you
how to create your
own views that are robust and reusable.</p>
<h2>Lessons</h2>
<dl>
<dt><b><a href="create-view.html">Creating a View Class</a></b></dt>
<dd>Create a class that acts like a built-in view, with custom
attributes and support from the <a href="http://developer.android.com/sdk/eclipse-adt.html">ADT</a> layout editor.
</dd>
<dt><b><a href="custom-drawing.html">Custom Drawing</a></b></dt>
<dd>Make your view visually distinctive using the Android graphics system.</dd>
<dt><b><a href="making-interactive.html">Making the View Interactive</a></b></dt>
<dd>Users expect a view to react smoothly and naturally to input gestures.
This lesson discusses how to use gesture detection, physics, and animation
to give your user interface a professional feel.
</dd>
<dt><b><a href="optimizing-view.html">Optimizing the View</a></b></dt>
<dd>No matter how beautiful your UI is, users won't love it if it
doesn't run at a consistently high frame rate. Learn how to avoid common
performance problems, and how to use hardware acceleration to make your
custom drawings run faster.
</dd>
</dl>