Stay organized with collections
Save and categorize content based on your preferences.
android.support.v17.leanback
Support classes for building Leanback user experiences.
Many apps intended for a 10-foot, or 'Leanback', experience are centered around media and games.
Games tend to have custom user interfaces, but media applications may benefit from a common set of
user interface components that work well in a Leanback environment. Following is an overview of
the Leanback Support Library.
Leanback provides a model-view-presenter approach to building applications:
The model is primarily provided by the application developer. Leanback imposes very few
restrictions on how this model is implemented: anything extending Object in Java is
supported.
The view is handled by the existing android.view package. Developers
may continue to use their existing knowledge and experience to create visually compelling
applications with Leanback.
The presenter is based on the existing Adapter concept in the Android framework, but has
been updated to add more flexibility and composability. In particular, the interface for
binding data to views has been separated from the adapter that traverses the data, allowing
presenters to be used in more places. See Presenter
for more details.
Many lower level building blocks are also provided in the android.support.v17.leanback.widget package.
These allow applications to easily incorporate Leanback look and feel while allowing for a
high degree of customization. Primary examples include the UI widget
HorizontalGridView and
VerticalGridView.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.
[null,null,["Last updated 2025-02-10 UTC."],[],[],null,["# android.support.v17.leanback\n============================\n\n| This package is part of the Android [support library](/topic/libraries/support-library) which is no longer maintained. The support library has been superseded by [AndroidX](/jetpack/androidx) which is part of [Jetpack](/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider [migrating](/jetpack/androidx/migrate) existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library [class\n| mappings](/jetpack/androidx/migrate/class-mappings).\n\nSupport classes for building Leanback user experiences.\n\n\nMany apps intended for a 10-foot, or 'Leanback', experience are centered around media and games.\nGames tend to have custom user interfaces, but media applications may benefit from a common set of\nuser interface components that work well in a Leanback environment. Following is an overview of\nthe Leanback Support Library.\n\n\nLeanback provides a model-view-presenter approach to building applications:\n\n- The model is primarily provided by the application developer. Leanback imposes very few restrictions on how this model is implemented: anything extending Object in Java is supported.\n- The view is handled by the existing [android.view](/reference/android/view/package-summary) package. Developers may continue to use their existing knowledge and experience to create visually compelling applications with Leanback.\n- The presenter is based on the existing Adapter concept in the Android framework, but has been updated to add more flexibility and composability. In particular, the interface for binding data to views has been separated from the adapter that traverses the data, allowing presenters to be used in more places. See [Presenter](/reference/android/support/v17/leanback/widget/Presenter) for more details.\n\n\nLeanback contains a mixture of higher level building blocks such as Fragments in the\n[android.support.v17.leanback.app](/reference/android/support/v17/leanback/app/package-summary) package. Notable examples are the\n[BrowseSupportFragment](/reference/android/support/v17/leanback/app/BrowseSupportFragment),\n[DetailsSupportFragment](/reference/android/support/v17/leanback/app/DetailsSupportFragment),\n[PlaybackSupportFragment](/reference/android/support/v17/leanback/app/PlaybackSupportFragment) and the\n[GuidedStepSupportFragment](/reference/android/support/v17/leanback/app/GuidedStepSupportFragment). Helper classes are also\nprovided that work with the leanback fragments, for example the\n[PlaybackTransportControlGlue](/reference/android/support/v17/leanback/media/PlaybackTransportControlGlue) and\n[PlaybackSupportFragmentGlueHost](/reference/android/support/v17/leanback/app/PlaybackSupportFragmentGlueHost).\n\n\nMany lower level building blocks are also provided in the [android.support.v17.leanback.widget](/reference/android/support/v17/leanback/widget/package-summary) package.\nThese allow applications to easily incorporate Leanback look and feel while allowing for a\nhigh degree of customization. Primary examples include the UI widget\n[HorizontalGridView](/reference/android/support/v17/leanback/widget/HorizontalGridView) and\n[VerticalGridView](/reference/android/support/v17/leanback/widget/VerticalGridView).\n\n\nClasses\n-------\n\n|----------------------------------------------------------------------|---|\n| [R](/reference/android/support/v17/leanback/R) | |\n| [R.anim](/reference/android/support/v17/leanback/R.anim) | |\n| [R.animator](/reference/android/support/v17/leanback/R.animator) | |\n| [R.attr](/reference/android/support/v17/leanback/R.attr) | |\n| [R.bool](/reference/android/support/v17/leanback/R.bool) | |\n| [R.color](/reference/android/support/v17/leanback/R.color) | |\n| [R.dimen](/reference/android/support/v17/leanback/R.dimen) | |\n| [R.drawable](/reference/android/support/v17/leanback/R.drawable) | |\n| [R.fraction](/reference/android/support/v17/leanback/R.fraction) | |\n| [R.id](/reference/android/support/v17/leanback/R.id) | |\n| [R.integer](/reference/android/support/v17/leanback/R.integer) | |\n| [R.layout](/reference/android/support/v17/leanback/R.layout) | |\n| [R.raw](/reference/android/support/v17/leanback/R.raw) | |\n| [R.string](/reference/android/support/v17/leanback/R.string) | |\n| [R.style](/reference/android/support/v17/leanback/R.style) | |\n| [R.styleable](/reference/android/support/v17/leanback/R.styleable) | |\n| [R.transition](/reference/android/support/v17/leanback/R.transition) | |\n\n-\n\n Classes\n -------\n\n - [R](/reference/android/support/v17/leanback/R)\n - [R.anim](/reference/android/support/v17/leanback/R.anim)\n - [R.animator](/reference/android/support/v17/leanback/R.animator)\n - [R.attr](/reference/android/support/v17/leanback/R.attr)\n - [R.bool](/reference/android/support/v17/leanback/R.bool)\n - [R.color](/reference/android/support/v17/leanback/R.color)\n - [R.dimen](/reference/android/support/v17/leanback/R.dimen)\n - [R.drawable](/reference/android/support/v17/leanback/R.drawable)\n - [R.fraction](/reference/android/support/v17/leanback/R.fraction)\n - [R.id](/reference/android/support/v17/leanback/R.id)\n - [R.integer](/reference/android/support/v17/leanback/R.integer)\n - [R.layout](/reference/android/support/v17/leanback/R.layout)\n - [R.raw](/reference/android/support/v17/leanback/R.raw)\n - [R.string](/reference/android/support/v17/leanback/R.string)\n - [R.style](/reference/android/support/v17/leanback/R.style)\n - [R.styleable](/reference/android/support/v17/leanback/R.styleable)\n - [R.transition](/reference/android/support/v17/leanback/R.transition)"]]