additional lifecycle methods added to viewcontroller

This commit is contained in:
Gavriil Sitnikov 2016-08-29 21:00:49 +03:00
parent 5ac6c6dda7
commit f5b4e1b2e7
2 changed files with 51 additions and 0 deletions

View File

@ -158,6 +158,33 @@ public class ViewController<TActivity extends ViewControllerActivity<?>,
baseLifecycleBindable.onStart();
}
/**
* Calls when {@link ViewController} have resumed.
* Happens at {@link ViewControllerFragment#onResume(View, ViewControllerActivity)}.
*/
@CallSuper
public void onResume() {
//do nothing
}
/**
* Calls when {@link ViewController} have goes near out of memory state.
* Happens at {@link ViewControllerFragment#onLowMemory()}.
*/
@CallSuper
public void onLowMemory() {
//do nothing
}
/**
* Calls when {@link ViewController} have paused.
* Happens at {@link ViewControllerFragment#onPause(View, ViewControllerActivity)}.
*/
@CallSuper
public void onPause() {
//do nothing
}
/**
* Calls when {@link ViewController} should save it's state.
* Happens at {@link ViewControllerFragment#onSaveInstanceState(Bundle)}.

View File

@ -214,6 +214,22 @@ public abstract class ViewControllerFragment<TState extends AbstractState, TActi
}
}
@Override
protected void onResume(@NonNull final View view, @NonNull final TActivity activity) {
super.onResume(view, activity);
if (viewController != null) {
viewController.onResume();
}
}
@Override
public void onLowMemory() {
super.onLowMemory();
if (viewController != null) {
viewController.onLowMemory();
}
}
/**
* Calls when activity configuring ActionBar, Toolbar, Sidebar etc.
* If it will be called or not depends on {@link #hasOptionsMenu()} and {@link #isMenuVisible()}.
@ -260,6 +276,14 @@ public abstract class ViewControllerFragment<TState extends AbstractState, TActi
savedInstanceState.putSerializable(VIEW_CONTROLLER_STATE_EXTRA, state);
}
@Override
protected void onPause(@NonNull final View view, @NonNull final TActivity activity) {
super.onPause(view, activity);
if (viewController != null) {
viewController.onPause();
}
}
@Override
protected void onStop(@NonNull final View view, @NonNull final TActivity activity) {
isStarted = false;