187 lines
7.1 KiB
Plaintext
187 lines
7.1 KiB
Plaintext
page.title=Introduction to Honeycomb
|
|
@jd:body
|
|
|
|
<p>Welcome to the Honeycomb preview SDK. Honeycomb is the next major release of the Android
|
|
platform and is optimized for tablet devices. This document provides an introduction to the new
|
|
platform features and APIs available in Honeycomb.</p>
|
|
|
|
|
|
<h2>Fragments</h2>
|
|
|
|
<div class="figure" style="width:400px">
|
|
<img src="{@docRoot}images/preview_hc/fragments_layout.png" alt="" />
|
|
<p class="img-caption"><strong>Fragment Layout.</strong> An activity with two
|
|
fragments: one with a list view, on the left, and one that displays selected content on the
|
|
right. This demo is available in the samples package.</p>
|
|
</div>
|
|
|
|
|
|
<p>A new framework component that allows you to separate distinct elements of an activity into
|
|
self-contained modules that define their own UI and lifecycle—defining what may be
|
|
considered "sub-activities".</p>
|
|
<ul>
|
|
<li>Multiple fragments can be combined in a single activity to build a multi-pane UI in which
|
|
each pane manages its own lifecycle and user inputs</li>
|
|
<li>Fragments are self-contained and can be reused in multiple activities</li>
|
|
<li>Fragments can be added, removed, replaced and animated inside the activity</li>
|
|
<li>Fragment can be added to a back stack managed by the activity, preserving the state of
|
|
fragments as they are changed and allowing the user to navigate backward through the different
|
|
states</li>
|
|
<li>By <a
|
|
href="{@docRoot}guide/topics/resources/providing-resources.html#AlternativeResources">providing
|
|
alternative resources</a>, you can mix and match fragments, based
|
|
on the screen size and orientation</li>
|
|
<li>Fragments have direct access to their container activity and can contribute items to the
|
|
activity's Options Menu</li>
|
|
</ul>
|
|
|
|
<p>For more information, see the <a
|
|
href="{@docRoot}guide/topics/fragments/index.html">Fragments</a> developer guide.</p>
|
|
|
|
|
|
<h2>Action Bar</h2>
|
|
|
|
<p>A replacement for the traditional title bar, which provides users quick access to global
|
|
actions and different navigation modes.</p>
|
|
<ul>
|
|
<li>Provides quick access to items from the Options Menu ("action items") and interactive
|
|
widgets ("action views")</li>
|
|
<li>Includes the application logo in the left corner, which can perform actions when tapped
|
|
and can be replaced with a custom logo</li>
|
|
<li>Provides breadcumbs for navigating backward through fragments</li>
|
|
<li>Offers built in navigation modes, including tabs and a drop-down list</li>
|
|
<li>Can be customized with themes and custom backgrounds</li>
|
|
<li>And more</li>
|
|
</ul>
|
|
|
|
<img src="{@docRoot}images/preview_hc/actionbar.png" alt="" />
|
|
<p class="img-caption"><strong>Action Bar.</strong> An action bar with a custom logo,
|
|
tabs, and Options Menu. This demo is available in the samples package.</p>
|
|
|
|
<p>For more information, see the <a
|
|
href="{@docRoot}guide/topics/ui/actionbar.html">Action Bar</a> developer guide.</p>
|
|
|
|
|
|
<h2>System Clipboard</h2>
|
|
|
|
<p>Applications can copy and paste data (beyond mere text) to and from the system-wide
|
|
clipboard.</p>
|
|
|
|
<ul>
|
|
<li>Clipped data can be plain text, a URI, or an intent</li>
|
|
<li>The new {@link android.content.ClipData} class represents a complex data type for the
|
|
clipboard</li>
|
|
<li>The new {@link android.content.ClipboardManager} class allows apps to add {@link
|
|
android.content.ClipData} to the clipboard (copy) and read {@link
|
|
android.content.ClipData} from the clipboard (paste)</li>
|
|
<li>The {@link android.content.ContentProvider} class has been extended to generate byte
|
|
streams based on data types added to the clipboard and point to data hosted in a
|
|
content provider</li>
|
|
</ul>
|
|
|
|
<p>See {@link android.content.ClipData} and {@link android.content.ClipboardManager}
|
|
for more information. You can also see an example implementation of copy/paste in an updated
|
|
version of the NotePad application (available in the samples package).</p>
|
|
|
|
|
|
<h2>Drag and Drop</h2>
|
|
|
|
<p>New APIs to perform drag and drop operations, leveraging the system clipboard APIs to
|
|
transport data.</p>
|
|
|
|
<ul>
|
|
<li>Any {@link android.view.View} can be used for a drag and drop event and a thumbnail of that
|
|
view is generated and used during the drag</li>
|
|
<li>{@link android.view.ViewGroup}s that can receive the object are notified during hover and drop
|
|
events</li>
|
|
<li>The new {@link android.view.DragEvent} class describes a drag event relating to a view,
|
|
including the item's current coordinates, the type of action (whether the drag has entered the
|
|
view, exited the view, started, dropped, etc.), and provides access to the {@link
|
|
android.content.ClipData} being carried</li>
|
|
<li>The new {@link android.view.View.OnDragListener} interface defines a callback that views
|
|
can register in order to be notified of drag events being dispatched to the view; view's can
|
|
register a drag listener with {@link android.view.View#setOnDragListener setOnDragListener()}</li>
|
|
</ul>
|
|
|
|
<p>See {@link android.view.DragEvent} and {@link android.view.View.OnDragListener} for more
|
|
information.</p>
|
|
|
|
|
|
<h2>New Animations</h2>
|
|
|
|
<p>An all new animation framework.</p>
|
|
|
|
<ul>
|
|
<li>A flexible animation system that allows you to animate the properties of any object (View,
|
|
Drawable, Fragment, Object, anything)</li>
|
|
</ul>
|
|
|
|
<p>See the {@link android.animation} package.</p>
|
|
|
|
|
|
<h2>Extended App Widgets</h2>
|
|
|
|
<p>App widgets can now be more interactive and accept finger gestures.</p>
|
|
|
|
<ul>
|
|
<li>The complete list of supported widgets for an app widget is now: {@link
|
|
android.widget.AnalogClock}, {@link android.widget.Button}, {@link android.widget.Chronometer},
|
|
{@link android.widget.ImageButton}, {@link android.widget.ImageView}, {@link
|
|
android.widget.ProgressBar}, {@link android.widget.TextView}, {@link
|
|
android.widget.ViewFlipper}, {@link android.widget.AdapterViewFlipper}, {@link
|
|
android.widget.StackView}, {@link android.widget.ListView}, and {@link
|
|
android.widget.GridView}.</li>
|
|
</ul>
|
|
|
|
|
|
<h2>Extended Status Bar Notifications</h2>
|
|
|
|
<p>The {@link android.app.Notification} class has been extended to support more content-rich
|
|
status bar notifications when on xlarge screens.</p>
|
|
|
|
<ul>
|
|
<li>New {@link android.app.Notification.Builder} class helps you easily create new {@link
|
|
android.app.Notification} objects</li>
|
|
<li>Support for a title in the status bar ticker (in addition to the normal ticker text)</li>
|
|
<li>Support for a large "sender" icon in the notification—a second icon intended for
|
|
social applications to show the contact photo of the person who is the source of the
|
|
notification</li>
|
|
<li>Support for custom layouts in the status bar ticker</li>
|
|
<li>Support for buttons in the expanded notification that deliver custom intents
|
|
(such as to control ongoing music in the background)</li>
|
|
</ul>
|
|
|
|
|
|
<h2>Plus Android 2.3</h2>
|
|
|
|
<p>Honeycomb includes all platform changes introduced for Android 2.3.</p>
|
|
|
|
<p>To take full advantage of Honeycomb, you should also be aware of the new features
|
|
and APIs introduced for Android 2.3. To learn more, read the <a
|
|
href="{@docRoot}sdk/android-2.3.html">Android 2.3 release notes</a>.</p>
|
|
|
|
<!--
|
|
<div class="special">
|
|
<p>To set up your preview SDK and start developing apps for Honeycomb, see the <a
|
|
href="{@docRoot}sdk/preview/installing.html">Getting Started</a> guide.</p>
|
|
</div>
|
|
-->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|