diff options
author | Dake Gu <dake@google.com> | 2015-10-01 14:32:05 -0700 |
---|---|---|
committer | Dake Gu <dake@google.com> | 2015-10-01 14:36:25 -0700 |
commit | ab2a8a7dae6fae5bc97240c47a68d6a7b93221b1 (patch) | |
tree | a216823737504197efe36908b26995696f468ab3 | |
parent | 8ab0d48a61987446c782d2d5816c522b2768adc6 (diff) | |
download | android_development-ab2a8a7dae6fae5bc97240c47a68d6a7b93221b1.tar.gz android_development-ab2a8a7dae6fae5bc97240c47a68d6a7b93221b1.tar.bz2 android_development-ab2a8a7dae6fae5bc97240c47a68d6a7b93221b1.zip |
Supportleanbackshowcase: Polishing
Support staggered slide in/out transition for VerticalGrid.
Move background from layout file to windowBackground in theme. Defining
background on view conflicts with transitions.
Change-Id: If823f492fd5bdd0b16c1d1e735f4214f925f3ae3
5 files changed, 26 insertions, 15 deletions
diff --git a/samples/SupportLeanbackShowcase/app/src/main/AndroidManifest.xml b/samples/SupportLeanbackShowcase/app/src/main/AndroidManifest.xml index 756ef94e7..cc84e9cc7 100644 --- a/samples/SupportLeanbackShowcase/app/src/main/AndroidManifest.xml +++ b/samples/SupportLeanbackShowcase/app/src/main/AndroidManifest.xml @@ -47,7 +47,7 @@ android:theme="@style/Theme.Example.LeanbackBrowse"></activity> <activity android:name=".app.grid.GridExampleActivity" - android:theme="@style/Theme.Example.Leanback"></activity> + android:theme="@style/Theme.Example.LeanbackVerticalGrid"></activity> <activity android:name=".app.media.VideoExampleActivity" android:theme="@style/Theme.Example.Leanback"></activity> diff --git a/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/grid/GridExampleFragment.java b/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/grid/GridExampleFragment.java index 8002bf2c5..6640b5180 100644 --- a/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/grid/GridExampleFragment.java +++ b/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/grid/GridExampleFragment.java @@ -15,6 +15,7 @@ package android.support.v17.leanback.supportleanbackshowcase.app.grid; import android.os.Bundle; +import android.os.Handler; import android.support.v17.leanback.app.VerticalGridFragment; import android.support.v17.leanback.supportleanbackshowcase.R; import android.support.v17.leanback.supportleanbackshowcase.utils.Utils; @@ -35,6 +36,8 @@ public class GridExampleFragment extends VerticalGridFragment { private static final int COLUMNS = 4; private static final int ZOOM_FACTOR = FocusHighlight.ZOOM_FACTOR_MEDIUM; + private ArrayObjectAdapter mAdapter; + public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setTitle(getString(R.string.grid_example_title)); @@ -47,11 +50,23 @@ public class GridExampleFragment extends VerticalGridFragment { setGridPresenter(gridPresenter); PresenterSelector cardPresenterSelector = new CardPresenterSelector(getActivity()); - ArrayObjectAdapter adapter = new ArrayObjectAdapter(cardPresenterSelector); - String json = Utils.inputStreamToString(getResources().openRawResource(R.raw.grid_example)); - CardRow row = new Gson().fromJson(json, CardRow.class); - adapter.addAll(0, row.getCards()); - setAdapter(adapter); + mAdapter = new ArrayObjectAdapter(cardPresenterSelector); + setAdapter(mAdapter); + + prepareEntranceTransition(); + new Handler().postDelayed(new Runnable() { + @Override + public void run() { + createRows(); + startEntranceTransition(); + } + }, 1000); } + private void createRows() { + String json = Utils.inputStreamToString(getResources() + .openRawResource(R.raw.grid_example)); + CardRow row = new Gson().fromJson(json, CardRow.class); + mAdapter.addAll(0, row.getCards()); + } } diff --git a/samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_grid_example.xml b/samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_grid_example.xml index c8b0a3790..f3fcdeaac 100644 --- a/samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_grid_example.xml +++ b/samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_grid_example.xml @@ -16,7 +16,6 @@ --> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" - android:background="@drawable/background_food" android:layout_height="match_parent"> <fragment diff --git a/samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_main.xml b/samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_main.xml index e3c6889e2..9d2eda6c7 100644 --- a/samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_main.xml +++ b/samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_main.xml @@ -21,6 +21,5 @@ android:layout_width="match_parent" android:layout_height="match_parent" tools:deviceIds="tv" - android:background="@drawable/bg_living_room_wide" tools:ignore="MergeRootFrame"> </RelativeLayout> diff --git a/samples/SupportLeanbackShowcase/app/src/main/res/values/themes.xml b/samples/SupportLeanbackShowcase/app/src/main/res/values/themes.xml index 12343de7d..2f6822b69 100644 --- a/samples/SupportLeanbackShowcase/app/src/main/res/values/themes.xml +++ b/samples/SupportLeanbackShowcase/app/src/main/res/values/themes.xml @@ -16,25 +16,23 @@ <resources> <style name="Theme.Example.Leanback" parent="Theme.Leanback"> - <item name="android:windowEnterTransition">@android:transition/fade</item> - <item name="android:windowExitTransition">@android:transition/fade</item> - <item name="android:windowSharedElementExitTransition">@android:transition/move</item> - <item name="android:windowSharedElementEnterTransition">@android:transition/move</item> - <item name="android:windowAllowReturnTransitionOverlap">true</item> - <item name="android:windowAllowEnterTransitionOverlap">true</item> - <item name="android:windowContentTransitions">true</item> <item name="android:colorPrimary">#00A2B8</item> <item name="android:colorAccent">@color/accent</item> <item name="preferenceTheme">@style/PreferenceThemeOverlay.v14</item> </style> <style name="Theme.Example.LeanbackLauncher" parent="Theme.Example.Leanback"> + <item name="android:windowBackground">@drawable/bg_living_room_wide</item> <item name="browseRowsMarginTop">275dp</item> </style> <style name="Theme.Example.LeanbackBrowse" parent="Theme.Leanback.Browse"> </style> + <style name="Theme.Example.LeanbackVerticalGrid" parent="Theme.Leanback.VerticalGrid"> + <item name="android:windowBackground">@drawable/background_food</item> + </style> + <style name="Theme.Example.LeanbackWizard" parent="Theme.Leanback.GuidedStep"> <item name="guidedActionsContainerStyle">@style/WizardActionsContainerStyle</item> </style> |