1a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout/** 2a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * Copyright (C) 2015 The Android Open Source Project 3a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * 4a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except 5a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * in compliance with the License. You may obtain a copy of the License at 6a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * 7a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * http://www.apache.org/licenses/LICENSE-2.0 8a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * 9a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * Unless required by applicable law or agreed to in writing, software distributed under the License 10a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 11a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * or implied. See the License for the specific language governing permissions and limitations under 12a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * the License. 13a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout */ 14a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout 15a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout/** 16a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <p>Support classes for building Leanback user experiences.</p> 17a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <p> 18a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * Many apps intended for a 10-foot, or 'Leanback', experience are centered around media and games. 19a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * Games tend to have custom user interfaces, but media applications may benefit from a common set of 20a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * user interface components that work well in a Leanback environment. Following is an overview of 21a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * the Leanback Support Library. 22a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * </p> 23a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <p> 24a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * Leanback provides a model-view-presenter approach to building applications: 25a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <ul> 26a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <li>The model is primarily provided by the application developer. Leanback imposes very few 27a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * restrictions on how this model is implemented: anything extending Object in Java is 28a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * supported. 29a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * </li> 30a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <li>The view is handled by the existing {@link android.view} package. Developers 31a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * may continue to use their existing knowledge and experience to create visually compelling 32a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * applications with Leanback. 33a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * </li> 34a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <li>The presenter is based on the existing Adapter concept in the Android framework, but has 35a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * been updated to add more flexibility and composability. In particular, the interface for 36a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * binding data to views has been separated from the adapter that traverses the data, allowing 37a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * presenters to be used in more places. See {@link android.support.v17.leanback.widget.Presenter} 38a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * for more details. 39a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * </li> 40a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * </ul> 41a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <p> 42a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * Leanback contains a mixture of higher level building blocks such as Fragments in the 43a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * {@link android.support.v17.leanback.app} package. Notable examples are the 44a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * {@link android.support.v17.leanback.app.BrowseFragment} and the 45a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * {@link android.support.v17.leanback.app.GuidedStepFragment}. Helper classes are also provided 46a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * that work with the leanback fragments, for example the 47a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * {@link android.support.v17.leanback.app.PlaybackControlGlue}. 48a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * </p> 49a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * <p> 50a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * Many lower level building blocks are also provided in the {@link android.support.v17.leanback.widget} package. 51a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * These allow applications to easily incorporate Leanback look and feel while allowing for a 52a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * high degree of customization. Primary examples include the UI widget 53a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * {@link android.support.v17.leanback.widget.HorizontalGridView} and 54a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * {@link android.support.v17.leanback.widget.VerticalGridView}. Helper classes also exist at this level 55a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * which do not depend on the leanback fragments, for example the 56a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout * {@link android.support.v17.leanback.widget.TitleHelper}. 57a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout */ 58a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stout 59a00bada00bff4a58436a39472ab14ccb7a8f619dCraig Stoutpackage android.support.v17.leanback;