private boolean checkTitleStep(String title) { boolean titleIsCorrect = false; if (title.length() >= MIN_CHARACTERS_TITLE) { titleIsCorrect = true; verticalStepperForm.setActiveStepAsCompleted(); } else { verticalStepperForm.setActiveStepAsUncompleted(); } return titleIsCorrect; }
private boolean checkDays() { boolean thereIsAtLeastOneDaySelected = false; for (int i = 0; i < weekDays.length && !thereIsAtLeastOneDaySelected; i++) { if (weekDays[i]) { verticalStepperForm.setStepAsCompleted(DAYS_STEP_NUM); thereIsAtLeastOneDaySelected = true; } } if (!thereIsAtLeastOneDaySelected) { verticalStepperForm.setStepAsUncompleted(DAYS_STEP_NUM); } return thereIsAtLeastOneDaySelected; }
@Override public void onStepOpening(int stepNumber) { switch (stepNumber) { case TITLE_STEP_NUM: // When this step is open, we check that the title is correct checkTitleStep(titleEditText.getText().toString()); break; case DESCRIPTION_STEP_NUM: case TIME_STEP_NUM: // As soon as they are open, these two steps are marked as completed because they // have default values verticalStepperForm.setStepAsCompleted(stepNumber); break; case DAYS_STEP_NUM: // When this step is open, we check the days to verify that at least one is selected checkDays(); break; } }
private void initializeActivity() { // Time step vars time = new Pair(8, 30); setTimePicker(8, 30); // Week days step vars weekDays = new boolean[7]; // Vertical Stepper form vars int colorPrimary = ContextCompat.getColor(getApplicationContext(), R.color.colorPrimary); int colorPrimaryDark = ContextCompat.getColor(getApplicationContext(), R.color.colorPrimaryDark); String[] stepsNames = {"Title", "Description", "Time", "Week schedule"}; // Here we find and initialize the form verticalStepperForm = (VerticalStepperFormLayout) findViewById(R.id.vertical_stepper_form); if (verticalStepperForm != null) { verticalStepperForm.initialiseVerticalStepperForm( stepsNames, colorPrimary, colorPrimaryDark, this, this); } }
private void confirmBack() { if (verticalStepperForm.isStepCompleted(0)) { BackConfirmationFragment backConfirmation = new BackConfirmationFragment(); backConfirmation.setOnConfirmBack( new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { confirmBack = true; } }); backConfirmation.setOnNotConfirmBack( new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { confirmBack = false; finish(); } }); backConfirmation.show(getSupportFragmentManager(), null); } else { confirmBack = false; finish(); } }