File tree Expand file tree Collapse file tree 3 files changed +22
-0
lines changed
example/src/main/java/com/quickbirdstudios/example/ui/main
survey/src/main/java/com.quickbirdstudios.surveykit/survey Expand file tree Collapse file tree 3 files changed +22
-0
lines changed Original file line number Diff line number Diff line change @@ -201,6 +201,16 @@ class MainActivity : AppCompatActivity() {
201201 }
202202 }
203203
204+ surveyView.onStepBegin = { step ->
205+ when (step) {
206+ is QuestionStep -> {
207+ Log .w (" ASDF" , " step '${step?.id} ': ${step.title} (${step.text} )" )
208+ }
209+ else ->
210+ Log .w (" ASDF" , " step '${step?.id} '" )
211+ }
212+ }
213+
204214 val configuration = SurveyTheme (
205215 themeColorDark = ContextCompat .getColor(this , R .color.cyan_dark),
206216 themeColor = ContextCompat .getColor(this , R .color.cyan_normal),
Original file line number Diff line number Diff line change @@ -8,6 +8,7 @@ import com.quickbirdstudios.surveykit.result.TaskResult
88import com.quickbirdstudios.surveykit.steps.Step
99
1010internal interface Survey {
11+ var onStepBegin: (Step ? ) -> Unit
1112 var onStepResult: (Step ? , StepResult ? ) -> Unit
1213 var onSurveyFinish: (TaskResult , FinishReason ) -> Unit
1314
Original file line number Diff line number Diff line change @@ -91,6 +91,8 @@ class SurveyView @JvmOverloads constructor(
9191
9292 // region Overrides
9393
94+ override var onStepBegin: (Step ? ) -> Unit = { _ -> }
95+
9496 override var onStepResult: (Step ? , StepResult ? ) -> Unit = { _, _ -> }
9597
9698 override var onSurveyFinish: (TaskResult , FinishReason ) -> Unit = { _, _ -> }
@@ -121,6 +123,9 @@ class SurveyView @JvmOverloads constructor(
121123 val newStep = taskNavigator.nextStep(step, result) ? : return StepData (
122124 FinishReason .Completed
123125 )
126+
127+ onStepBegin(newStep)
128+
124129 val newResult = presenter(
125130 Presenter .Transition .SlideFromRight , newStep, resultGatherer.retrieve(newStep.id)
126131 ).storeResult()
@@ -135,6 +140,9 @@ class SurveyView @JvmOverloads constructor(
135140 taskNavigator.previousStep(step) ? : return StepData (
136141 FinishReason .Failed
137142 )
143+
144+ onStepBegin(previousStep)
145+
138146 val newResult = presenter(
139147 Presenter .Transition .SlideFromLeft ,
140148 previousStep,
@@ -150,6 +158,9 @@ class SurveyView @JvmOverloads constructor(
150158 val newStep = taskNavigator.nextStep(step) ? : return StepData (
151159 FinishReason .Completed
152160 )
161+
162+ onStepBegin(newStep)
163+
153164 val newResult = presenter(
154165 Presenter .Transition .SlideFromRight , newStep, resultGatherer.retrieve(newStep.id)
155166 ).storeResult()
You can’t perform that action at this time.
0 commit comments