diff --git a/app/src/main/java/info/nightscout/androidaps/PreferencesActivity.java b/app/src/main/java/info/nightscout/androidaps/PreferencesActivity.java index ed967c2a18..bc59ee5a0b 100644 --- a/app/src/main/java/info/nightscout/androidaps/PreferencesActivity.java +++ b/app/src/main/java/info/nightscout/androidaps/PreferencesActivity.java @@ -47,7 +47,9 @@ public class PreferencesActivity extends PreferenceActivity implements SharedPre protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); myPreferenceFragment = new MyPreferenceFragment(); - myPreferenceFragment.setCaller(getIntent()); + Bundle args = new Bundle(); + args.putInt("id", getIntent().getIntExtra("id", -1)); + myPreferenceFragment.setArguments(args); getFragmentManager().beginTransaction().replace(android.R.id.content, myPreferenceFragment).commit(); PreferenceManager.getDefaultSharedPreferences(this).registerOnSharedPreferenceChangeListener(this); } @@ -106,10 +108,12 @@ public class PreferencesActivity extends PreferenceActivity implements SharedPre } public static class MyPreferenceFragment extends PreferenceFragment { - Intent caller; + private Integer id; - public void setCaller(Intent i) { - caller = i; + @Override + public void setArguments(Bundle args) { + super.setArguments(args); + id = args.getInt("key"); } void addPreferencesFromResourceIfEnabled(PluginBase p, int type) { @@ -121,8 +125,6 @@ public class PreferencesActivity extends PreferenceActivity implements SharedPre public void onCreate(final Bundle savedInstanceState) { super.onCreate(savedInstanceState); - Integer id = caller.getIntExtra("id", -1); - if (id != -1) { addPreferencesFromResource(id); } else {