/* * Licensed Materials - Property of IBM * © Copyright IBM Corporation 2015. All Rights Reserved. */ package com.ibm.mil.readyapps.telco.onboarding.appintrolib; import android.content.Context; import android.support.annotation.NonNull; import android.view.View; /** * A controller that is used to provide custom indicator implementations and to control their behaviour. */ interface IndicatorController { /** * Create a new instance of the view to be inserted in the AppIntro layout. * This method is only called once for each creation of the activity. * <p/> * {@link IndicatorController#initialize(int)} is called after this. * * @param context A context to be used for the view instantiation * @return An instance of the indicator view */ View newInstance(@NonNull Context context); /** * Initialize the indicator view with the requested amount of elements. * As with {@link IndicatorController#newInstance(Context)}, this method is only called once for each creation of * the activity as well. * <p/> * {@link IndicatorController#newInstance(Context)} is called before this. * * @param slideCount The amount of slides present in the AppIntro */ void initialize(int slideCount); /** * Select the position for the new page that became selected. * This method is called every time the selected page changed. * * @param index The index of the page that became selected */ void selectPosition(int index); }