Skip to content

Instantly share code, notes, and snippets.

@mrmans0n
Created October 3, 2012 12:03
Show Gist options
  • Save mrmans0n/3826584 to your computer and use it in GitHub Desktop.
Save mrmans0n/3826584 to your computer and use it in GitHub Desktop.
LocalActivityManagerFragment
package com.bikeshare.hacks;
import android.app.LocalActivityManager;
import android.os.Bundle;
import android.support.v4.app.Fragment;
@SuppressWarnings("deprecation")
public class LocalActivityManagerFragment extends Fragment {
private static final String KEY_STATE_BUNDLE = "localActivityManagerState";
private LocalActivityManager mLocalActivityManager;
protected LocalActivityManager getLocalActivityManager() {
return mLocalActivityManager;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle state = null;
if(savedInstanceState != null) {
state = savedInstanceState.getBundle(KEY_STATE_BUNDLE);
}
mLocalActivityManager = new LocalActivityManager(getActivity(), true);
mLocalActivityManager.dispatchCreate(state);
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putBundle(KEY_STATE_BUNDLE, mLocalActivityManager.saveInstanceState());
}
@Override
public void onResume() {
super.onResume();
mLocalActivityManager.dispatchResume();
}
@Override
public void onPause() {
super.onPause();
mLocalActivityManager.dispatchPause(getActivity().isFinishing());
}
@Override
public void onStop() {
super.onStop();
mLocalActivityManager.dispatchStop();
}
@Override
public void onDestroy() {
super.onDestroy();
mLocalActivityManager.dispatchDestroy(getActivity().isFinishing());
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment