summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDake Gu <dake@google.com>2015-10-05 13:44:29 -0700
committerDake Gu <dake@google.com>2015-10-05 14:21:47 -0700
commitc8ad1e5263382c7d048349c1d63fd888f3926477 (patch)
tree64e716974c8da2eea51ad5afcf8c243c34caa8e1
parent6fe262dae987f9c11cbf5f839a31f10936e40495 (diff)
downloadandroid_development-c8ad1e5263382c7d048349c1d63fd888f3926477.tar.gz
android_development-c8ad1e5263382c7d048349c1d63fd888f3926477.tar.bz2
android_development-c8ad1e5263382c7d048349c1d63fd888f3926477.zip
Leanback Demo: demo of edit title
Bug 24673827 Change-Id: I1e4d9378cc862d748055387a71129692bd4cf53b
-rw-r--r--samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepActivity.java33
-rw-r--r--samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepSupportActivity.java33
-rw-r--r--samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/wizard/WizardExample2ndStepFragment.java25
-rw-r--r--samples/SupportLeanbackShowcase/app/src/main/res/values/strings.xml6
4 files changed, 82 insertions, 15 deletions
diff --git a/samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepActivity.java b/samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepActivity.java
index dac7f53c7..63149b444 100644
--- a/samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepActivity.java
+++ b/samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepActivity.java
@@ -27,6 +27,7 @@ import android.support.v17.leanback.app.GuidedStepFragment;
import android.support.v17.leanback.widget.GuidedAction;
import android.support.v17.leanback.widget.GuidanceStylist;
import android.support.v17.leanback.widget.GuidanceStylist.Guidance;
+import android.text.TextUtils;
import android.util.Log;
import android.view.ViewGroup;
import android.view.ViewTreeObserver.OnGlobalLayoutListener;
@@ -41,8 +42,9 @@ public class GuidedStepActivity extends Activity {
private static final int CONTINUE = 1;
private static final int BACK = 2;
- private static final int FIRST_NAME = 1;
- private static final int LAST_NAME = 2;
+ private static final int FIRST_NAME = 3;
+ private static final int LAST_NAME = 4;
+ private static final int PAYMENT = 5;
private static final int OPTION_CHECK_SET_ID = 10;
private static final int DEFAULT_OPTION = 0;
@@ -96,6 +98,17 @@ public class GuidedStepActivity extends Activity {
.build());
}
+ private static void addEditableAction(List<GuidedAction> actions, long id, String title,
+ String editTitle, String desc) {
+ actions.add(new GuidedAction.Builder()
+ .id(id)
+ .title(title)
+ .editTitle(editTitle)
+ .description(desc)
+ .editable(true)
+ .build());
+ }
+
private static void addCheckedAction(List<GuidedAction> actions, int iconResId, Context context,
String title, String desc) {
actions.add(new GuidedAction.Builder()
@@ -158,16 +171,30 @@ public class GuidedStepActivity extends Activity {
public void onCreateActions(List<GuidedAction> actions, Bundle savedInstanceState) {
addEditableAction(actions, FIRST_NAME, "Pat", "Your first name");
addEditableAction(actions, LAST_NAME, "Smith", "Your last name");
+ addEditableAction(actions, PAYMENT, "Payment", "", "Input credit card number");
+ addAction(actions, CONTINUE, "Continue", "Continue");
}
@Override
public void onGuidedActionClicked(GuidedAction action) {
- if (action.getId() == LAST_NAME) {
+ if (action.getId() == CONTINUE) {
FragmentManager fm = getFragmentManager();
GuidedStepFragment.add(fm, new ThirdStepFragment());
}
}
+ @Override
+ public void onGuidedActionEdited(GuidedAction action) {
+ CharSequence editTitle = action.getEditTitle();
+ if (TextUtils.isDigitsOnly(editTitle) && editTitle.length() == 16) {
+ editTitle = editTitle.subSequence(editTitle.length() - 4, editTitle.length());
+ action.setDescription("Visa XXXX-XXXX-XXXX-"+editTitle);
+ } else if (editTitle.length() == 0){
+ action.setDescription("Input credit card number");
+ } else {
+ action.setDescription("Error credit card number");
+ }
+ }
}
public static class ThirdStepFragment extends GuidedStepFragment {
diff --git a/samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepSupportActivity.java b/samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepSupportActivity.java
index 697432371..432c6c0f0 100644
--- a/samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepSupportActivity.java
+++ b/samples/SupportLeanbackDemos/src/com/example/android/leanback/GuidedStepSupportActivity.java
@@ -29,6 +29,7 @@ import android.support.v17.leanback.app.GuidedStepSupportFragment;
import android.support.v17.leanback.widget.GuidedAction;
import android.support.v17.leanback.widget.GuidanceStylist;
import android.support.v17.leanback.widget.GuidanceStylist.Guidance;
+import android.text.TextUtils;
import android.util.Log;
import android.view.ViewGroup;
import android.view.ViewTreeObserver.OnGlobalLayoutListener;
@@ -43,8 +44,9 @@ public class GuidedStepSupportActivity extends FragmentActivity {
private static final int CONTINUE = 1;
private static final int BACK = 2;
- private static final int FIRST_NAME = 1;
- private static final int LAST_NAME = 2;
+ private static final int FIRST_NAME = 3;
+ private static final int LAST_NAME = 4;
+ private static final int PAYMENT = 5;
private static final int OPTION_CHECK_SET_ID = 10;
private static final int DEFAULT_OPTION = 0;
@@ -98,6 +100,17 @@ public class GuidedStepSupportActivity extends FragmentActivity {
.build());
}
+ private static void addEditableAction(List<GuidedAction> actions, long id, String title,
+ String editTitle, String desc) {
+ actions.add(new GuidedAction.Builder()
+ .id(id)
+ .title(title)
+ .editTitle(editTitle)
+ .description(desc)
+ .editable(true)
+ .build());
+ }
+
private static void addCheckedAction(List<GuidedAction> actions, int iconResId, Context context,
String title, String desc) {
actions.add(new GuidedAction.Builder()
@@ -160,16 +173,30 @@ public class GuidedStepSupportActivity extends FragmentActivity {
public void onCreateActions(List<GuidedAction> actions, Bundle savedInstanceState) {
addEditableAction(actions, FIRST_NAME, "Pat", "Your first name");
addEditableAction(actions, LAST_NAME, "Smith", "Your last name");
+ addEditableAction(actions, PAYMENT, "Payment", "", "Input credit card number");
+ addAction(actions, CONTINUE, "Continue", "Continue");
}
@Override
public void onGuidedActionClicked(GuidedAction action) {
- if (action.getId() == LAST_NAME) {
+ if (action.getId() == CONTINUE) {
FragmentManager fm = getFragmentManager();
GuidedStepSupportFragment.add(fm, new ThirdStepFragment());
}
}
+ @Override
+ public void onGuidedActionEdited(GuidedAction action) {
+ CharSequence editTitle = action.getEditTitle();
+ if (TextUtils.isDigitsOnly(editTitle) && editTitle.length() == 16) {
+ editTitle = editTitle.subSequence(editTitle.length() - 4, editTitle.length());
+ action.setDescription("Visa XXXX-XXXX-XXXX-"+editTitle);
+ } else if (editTitle.length() == 0){
+ action.setDescription("Input credit card number");
+ } else {
+ action.setDescription("Error credit card number");
+ }
+ }
}
public static class ThirdStepFragment extends GuidedStepSupportFragment {
diff --git a/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/wizard/WizardExample2ndStepFragment.java b/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/wizard/WizardExample2ndStepFragment.java
index 3b369ace1..c1df8a131 100644
--- a/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/wizard/WizardExample2ndStepFragment.java
+++ b/samples/SupportLeanbackShowcase/app/src/main/java/android/support/v17/leanback/supportleanbackshowcase/app/wizard/WizardExample2ndStepFragment.java
@@ -17,6 +17,7 @@ package android.support.v17.leanback.supportleanbackshowcase.app.wizard;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
+import android.text.TextUtils;
import android.support.annotation.NonNull;
import android.support.v17.leanback.app.GuidedStepFragment;
import android.support.v17.leanback.supportleanbackshowcase.R;
@@ -69,19 +70,29 @@ public class WizardExample2ndStepFragment extends WizardExampleBaseStepFragment
action = new GuidedAction.Builder()
.id(ACTION_ID_PAYMENT_METHOD)
.title(getString(R.string.wizard_example_payment_method))
- .description(getString(R.string.wizard_example_visa_balance))
- .editable(false)
+ .editTitle("")
+ .description(getString(R.string.wizard_example_input_credit))
+ .editable(true)
.build();
actions.add(action);
}
@Override
- public void onGuidedActionClicked(GuidedAction action) {
- if (ACTION_ID_PAYMENT_METHOD == action.getId()) {
- Toast.makeText(getActivity(),
- getString(R.string.wizard_example_toast_payment_method_clicked),
- Toast.LENGTH_SHORT).show();
+ public void onGuidedActionEdited(GuidedAction action) {
+ CharSequence editTitle = action.getEditTitle();
+ if (TextUtils.isDigitsOnly(editTitle) && editTitle.length() == 16) {
+ action.setDescription(getString(R.string.wizard_example_visa,
+ editTitle.subSequence(editTitle.length() - 4, editTitle.length())));
+ } else if (editTitle.length() == 0) {
+ action.setDescription(getString(R.string.wizard_example_input_credit));
} else {
+ action.setDescription(getString(R.string.wizard_example_input_credit_wrong));
+ }
+ }
+
+ @Override
+ public void onGuidedActionClicked(GuidedAction action) {
+ if (ACTION_ID_CONFIRM == action.getId()) {
GuidedStepFragment fragment = new WizardExample3rdStepFragment();
fragment.setArguments(getArguments());
add(getFragmentManager(), fragment);
diff --git a/samples/SupportLeanbackShowcase/app/src/main/res/values/strings.xml b/samples/SupportLeanbackShowcase/app/src/main/res/values/strings.xml
index 9a46e5496..a25b964c8 100644
--- a/samples/SupportLeanbackShowcase/app/src/main/res/values/strings.xml
+++ b/samples/SupportLeanbackShowcase/app/src/main/res/values/strings.xml
@@ -51,6 +51,8 @@
<string name="wizard_example_watch_now">Watch now</string>
<string name="wizard_example_later">Later</string>
<string name="wizard_example_watch_now_clicked">\'Watch now\' clicked.</string>
- <string name="wizard_example_visa_balance">Visa - 1234 Balance $60.00</string>
- <string name="wizard_example_just_a_second">Just a second...</string>
+ <string name="wizard_example_input_credit">Input credit card number</string>
+ <string name="wizard_example_visa">Visa XXXX-XXXX-XXXX-%s</string>
+ <string name="wizard_example_input_credit_wrong">Error credit card number</string>
+ s<string name="wizard_example_just_a_second">Just a second...</string>
</resources> \ No newline at end of file