From b5cc2ff82ccbbe58bc30c1fc43a9eb4e6a3e9db2 Mon Sep 17 00:00:00 2001 From: geoffroy Date: Wed, 25 Nov 2015 10:51:14 -0500 Subject: [PATCH] Replaces settings activity with correct Preference fragment and xml --- .../geoffroy/donext/SettingsActivity.java | 52 ++++++------------- .../src/main/res/layout/activity_settings.xml | 43 --------------- DoNExt/app/src/main/res/xml/preferences.xml | 23 ++++++++ 3 files changed, 39 insertions(+), 79 deletions(-) delete mode 100644 DoNExt/app/src/main/res/layout/activity_settings.xml create mode 100644 DoNExt/app/src/main/res/xml/preferences.xml diff --git a/DoNExt/app/src/main/java/com/wismna/geoffroy/donext/SettingsActivity.java b/DoNExt/app/src/main/java/com/wismna/geoffroy/donext/SettingsActivity.java index 74e758c..9e1761f 100644 --- a/DoNExt/app/src/main/java/com/wismna/geoffroy/donext/SettingsActivity.java +++ b/DoNExt/app/src/main/java/com/wismna/geoffroy/donext/SettingsActivity.java @@ -1,50 +1,30 @@ package com.wismna.geoffroy.donext; -import android.content.Context; -import android.content.SharedPreferences; import android.os.Bundle; +import android.preference.PreferenceFragment; +import android.preference.PreferenceManager; import android.support.v7.app.AppCompatActivity; -import android.view.View; -import android.widget.AdapterView; -import android.widget.Spinner; -public class SettingsActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener { +public class SettingsActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.activity_settings); - populateSpinner(); + + // Display the preferences fragment as the main content. + getFragmentManager().beginTransaction() + .replace(android.R.id.content, new SettingsFragment()) + .commit(); + PreferenceManager.setDefaultValues(this, R.xml.preferences, false); } - private void populateSpinner() { - Spinner spinner = (Spinner) findViewById(R.id.max_lists_spinner); - spinner.setSelection(getPreference(R.id.max_lists_spinner)); - //ArrayAdapter adapter = (ArrayAdapter) spinner.getAdapter(); - //int position = adapter.getPosition() - /*ArrayAdapter adapter = ArrayAdapter.createFromResource(this, - R.array.settings_max_lists_number, R.layout.support_simple_spinner_dropdown_item); - adapter.setDropDownViewResource(R.layout.support_simple_spinner_dropdown_item); - spinner.setAdapter(adapter);*/ - } + public static class SettingsFragment extends PreferenceFragment { + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); - protected int getPreference(int setting) { - SharedPreferences sharedPreferences = this.getPreferences(Context.MODE_PRIVATE); - return sharedPreferences.getInt(getString(setting), 2); - } - protected void setPreference(int setting, int value) { - SharedPreferences sharedPreferences = this.getPreferences(Context.MODE_PRIVATE); - SharedPreferences.Editor editor = sharedPreferences.edit(); - editor.putInt(getString(setting), value); - editor.apply(); - } - public void onItemSelected(AdapterView parent, View view, int pos, long id) { - // Item was selected, do something - //setPreference(R.id.max_lists_spinner, Integer.parseInt((String) parent.getItemAtPosition(pos))); - setPreference(R.id.max_lists_spinner, pos); - } - - public void onNothingSelected(AdapterView parent) { - // Another interface callback + // Load the preferences from an XML resource + addPreferencesFromResource(R.xml.preferences); + } } } diff --git a/DoNExt/app/src/main/res/layout/activity_settings.xml b/DoNExt/app/src/main/res/layout/activity_settings.xml deleted file mode 100644 index 2d977ae..0000000 --- a/DoNExt/app/src/main/res/layout/activity_settings.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - diff --git a/DoNExt/app/src/main/res/xml/preferences.xml b/DoNExt/app/src/main/res/xml/preferences.xml new file mode 100644 index 0000000..bd054d1 --- /dev/null +++ b/DoNExt/app/src/main/res/xml/preferences.xml @@ -0,0 +1,23 @@ + + + + + + + \ No newline at end of file