added helper method to stateless view controllers

This commit is contained in:
Gavriil Sitnikov 2016-05-25 16:32:49 +03:00
parent 4ede146144
commit 3b516d9dd7
3 changed files with 30 additions and 2 deletions

View File

@ -42,8 +42,8 @@ public class SimpleViewControllerFragment<TState extends AbstractState, TActivit
/**
* Creates {@link Bundle} which will store state and {@link ViewController}'s class.
*
* @param viewControllerClass Class of {@link ViewController} which will be instantiated inside this fragment.
* @param state State to use into {@link ViewController}.
* @param viewControllerClass Class of {@link ViewController} which will be instantiated inside this fragment;
* @param state State to use into {@link ViewController};
* @return Returns {@link Bundle} with state inside.
*/
@NonNull

View File

@ -19,9 +19,12 @@
package ru.touchin.roboswag.components.navigation.fragments;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import ru.touchin.roboswag.components.navigation.AbstractState;
import ru.touchin.roboswag.components.navigation.ViewController;
import ru.touchin.roboswag.components.navigation.activities.ViewControllerActivity;
import ru.touchin.roboswag.core.log.Lc;
@ -36,6 +39,17 @@ public class StatelessTargetedViewControllerFragment<TTargetState extends Abstra
TActivity extends ViewControllerActivity<?>>
extends TargetedViewControllerFragment<AbstractState, TTargetState, TActivity> {
/**
* Creates {@link Bundle} which will store state and {@link ViewController}'s class.
*
* @param viewControllerClass Class of {@link ViewController} which will be instantiated inside this fragment;
* @return Returns {@link Bundle} with state inside.
*/
@NonNull
public static Bundle createState(@NonNull final Class<? extends ViewController> viewControllerClass) {
return createState(viewControllerClass, null);
}
@Nullable
@Override
public AbstractState getState() {

View File

@ -19,9 +19,12 @@
package ru.touchin.roboswag.components.navigation.fragments;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import ru.touchin.roboswag.components.navigation.AbstractState;
import ru.touchin.roboswag.components.navigation.ViewController;
import ru.touchin.roboswag.components.navigation.activities.ViewControllerActivity;
import ru.touchin.roboswag.core.log.Lc;
@ -34,6 +37,17 @@ import ru.touchin.roboswag.core.log.Lc;
public class StatelessViewControllerFragment<TActivity extends ViewControllerActivity<?>>
extends SimpleViewControllerFragment<AbstractState, TActivity> {
/**
* Creates {@link Bundle} which will store state and {@link ViewController}'s class.
*
* @param viewControllerClass Class of {@link ViewController} which will be instantiated inside this fragment;
* @return Returns {@link Bundle} with state inside.
*/
@NonNull
public static Bundle createState(@NonNull final Class<? extends ViewController> viewControllerClass) {
return createState(viewControllerClass, null);
}
@Nullable
@Override
public AbstractState getState() {