Advertisement
Guest User

Untitled

a guest
Apr 19th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.58 KB | None | 0 0
  1. package com.nwt.joymyanmarmusic.fragments;
  2.  
  3. import android.content.SharedPreferences;
  4. import android.os.Bundle;
  5. import android.preference.ListPreference;
  6. import android.preference.Preference;
  7. import android.preference.PreferenceFragment;
  8. import android.util.Log;
  9.  
  10. import com.nwt.joymyanmarmusic.BuildConfig;
  11. import com.nwt.joymyanmarmusic.R;
  12. import com.nwt.joymyanmarmusic.components.preference.WhitePreference;
  13. import com.nwt.joymyanmarmusic.utils.AppConstants;
  14. import com.nwt.joymyanmarmusic.utils.FontHelper;
  15. import com.nwt.joymyanmarmusic.utils.TheSunUtils;
  16.  
  17. public class SettingsFragment extends PreferenceFragment implements
  18. SharedPreferences.OnSharedPreferenceChangeListener {
  19.  
  20. @Override
  21. public void onCreate(Bundle savedInstanceState) {
  22. super.onCreate(savedInstanceState);
  23. addPreferencesFromResource(R.xml.pref_setttngs);
  24.  
  25. WhitePreference pref = (WhitePreference) findPreference("prefs_version_name");
  26. pref.setSummary("version: " + BuildConfig.VERSION_NAME);
  27.  
  28. Preference p = findPreference(getString(R.string.pref_font_key));
  29. if (p != null) {
  30. String value = FontHelper.getInstance(getActivity())
  31. .getSharedPreferences().getString(p.getKey(), "");
  32. setListPreferenceSummary(p, value);
  33. }
  34.  
  35. findPreference("pp").setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
  36. @Override
  37. public boolean onPreferenceClick(Preference preference) {
  38. TheSunUtils.showTermsAndConditionsDialog(getActivity(), AppConstants.URL_PRIVACY_POLICY);
  39. return true;
  40. }
  41. });
  42.  
  43. findPreference("tos").setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
  44. @Override
  45. public boolean onPreferenceClick(Preference preference) {
  46. TheSunUtils.showTermsAndConditionsDialog(getActivity(), AppConstants.URL_TERMS_AND_CONDITIONS);
  47. return true;
  48. }
  49. });
  50. }
  51.  
  52. @Override
  53. public void onStart() {
  54. super.onStart();
  55. // register the preference change listener
  56. getPreferenceScreen().getSharedPreferences()
  57. .registerOnSharedPreferenceChangeListener(this);
  58. }
  59.  
  60. @Override
  61. public void onStop() {
  62. super.onStop();
  63. // unregister the preference change listener
  64. getPreferenceScreen().getSharedPreferences()
  65. .unregisterOnSharedPreferenceChangeListener(this);
  66. }
  67.  
  68. @Override
  69. public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
  70.  
  71. Preference preference = findPreference(key);
  72. if (null != preference) {
  73. if (preference instanceof ListPreference) {
  74. setListPreferenceSummary(preference, sharedPreferences.getString(key, ""));
  75. }
  76.  
  77. if (key.equals(getString(R.string.pref_font_key))) {
  78. FontHelper.getInstance(getActivity()).setFont(sharedPreferences.getString(key, ""));
  79. }
  80. }
  81. }
  82.  
  83. private void setListPreferenceSummary(Preference preference, String value) {
  84. // For list preferences, look up the correct display value in
  85. // the preference's 'entries' list (since they have separate labels/values).
  86. ListPreference listPreference = (ListPreference) preference;
  87. int prefIndex = listPreference.findIndexOfValue(value);
  88. if (prefIndex >= 0) {
  89. preference.setSummary(listPreference.getEntries()[prefIndex]);
  90. }
  91. }
  92. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement