diff --git a/core/java/android/preference/PreferenceFragment.java b/core/java/android/preference/PreferenceFragment.java index 4e22ba08d5819..7766b54e748ef 100644 --- a/core/java/android/preference/PreferenceFragment.java +++ b/core/java/android/preference/PreferenceFragment.java @@ -145,7 +145,6 @@ public abstract class PreferenceFragment extends Fragment implements super.onCreate(savedInstanceState); mPreferenceManager = new PreferenceManager(getActivity(), FIRST_REQUEST_CODE); mPreferenceManager.setFragment(this); - mPreferenceManager.setOnPreferenceTreeClickListener(this); } @Override @@ -177,10 +176,17 @@ public abstract class PreferenceFragment extends Fragment implements } } + @Override + public void onStart() { + super.onStart(); + mPreferenceManager.setOnPreferenceTreeClickListener(this); + } + @Override public void onStop() { super.onStop(); mPreferenceManager.dispatchActivityStop(); + mPreferenceManager.setOnPreferenceTreeClickListener(null); } @Override @@ -195,7 +201,6 @@ public abstract class PreferenceFragment extends Fragment implements public void onDestroy() { super.onDestroy(); mPreferenceManager.dispatchActivityDestroy(); - mPreferenceManager.setOnPreferenceTreeClickListener(null); } @Override