summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDake Gu <dake@google.com>2015-10-01 14:32:05 -0700
committerDake Gu <dake@google.com>2015-10-01 14:36:25 -0700
commitab2a8a7dae6fae5bc97240c47a68d6a7b93221b1 (patch)
treea216823737504197efe36908b26995696f468ab3
parent8ab0d48a61987446c782d2d5816c522b2768adc6 (diff)
downloadandroid_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
-rw-r--r--samples/SupportLeanbackShowcase/app/src/main/AndroidManifest.xml2
-rw-r--r--samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/grid/GridExampleFragment.java25
-rw-r--r--samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_grid_example.xml1
-rw-r--r--samples/SupportLeanbackShowcase/app/src/main/res/layout/activity_main.xml1
-rw-r--r--samples/SupportLeanbackShowcase/app/src/main/res/values/themes.xml12
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>