Skip to content

Instantly share code, notes, and snippets.

@kingsleyadio
Created October 5, 2015 02:49
Show Gist options
  • Save kingsleyadio/584f7640ea40fe81f92e to your computer and use it in GitHub Desktop.
Save kingsleyadio/584f7640ea40fe81f92e to your computer and use it in GitHub Desktop.
Fix for fragments:
import android.app.Activity;
import android.app.Fragment;
import android.os.Bundle;
import android.support.annotation.NonNull;
/**
* @author ADIO Kingsley O.
* @since 06 Jun, 2015
*/
public class BaseFragment extends Fragment {
private Bundle savedViewState;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (savedInstanceState != null) {
savedViewState = savedInstanceState.getBundle("savedViewState");
}
}
@Override
public void onViewStateRestored(Bundle savedInstanceState) {
super.onViewStateRestored(savedInstanceState);
if (savedViewState != null) {
onRestoreViewState(savedViewState);
}
}
protected void onRestoreViewState(@NonNull Bundle savedViewState) {
}
@Override
public void onPause() {
super.onPause();
if (savedViewState == null) {
savedViewState = new Bundle();
}
onSaveViewState(savedViewState);
}
protected void onSaveViewState(@NonNull Bundle savedViewState) {
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putBundle("savedViewState", savedViewState);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment