Fix bug #15016050 Stability: ISE in Settings: Cannot add twice the same OnSwitchChangeListener
- add/remove the OnSwitchChangeListener into onResume/onPause Change-Id: Idb1ac3997a2dbc0ca387ed67bbbbcc1a431d8642
This commit is contained in:
@@ -387,19 +387,6 @@ public class DevelopmentSettings extends SettingsPreferenceFragment
|
|||||||
mEnabledSwitch.setEnabled(false);
|
mEnabledSwitch.setEnabled(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
mSwitchBar.addOnSwitchChangeListener(this);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onStart() {
|
|
||||||
super.onStart();
|
|
||||||
mSwitchBar.show();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onStop() {
|
|
||||||
super.onStop();
|
|
||||||
mSwitchBar.hide();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean removePreferenceForProduction(Preference preference) {
|
private boolean removePreferenceForProduction(Preference preference) {
|
||||||
@@ -464,6 +451,17 @@ public class DevelopmentSettings extends SettingsPreferenceFragment
|
|||||||
mEnabledSwitch.setChecked(mLastEnabledState);
|
mEnabledSwitch.setChecked(mLastEnabledState);
|
||||||
setPrefsEnabledState(mLastEnabledState);
|
setPrefsEnabledState(mLastEnabledState);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mSwitchBar.addOnSwitchChangeListener(this);
|
||||||
|
mSwitchBar.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onPause() {
|
||||||
|
super.onPause();
|
||||||
|
|
||||||
|
mSwitchBar.removeOnSwitchChangeListener(this);
|
||||||
|
mSwitchBar.hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
void updateCheckBox(CheckBoxPreference checkBox, boolean value) {
|
void updateCheckBox(CheckBoxPreference checkBox, boolean value) {
|
||||||
|
Reference in New Issue
Block a user