Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. import android.content.Context;
  2. import android.content.SharedPreferences;
  3. import android.preference.PreferenceManager;
  4.  
  5.  
  6. public class KPref {
  7.  
  8. enum KDataType {
  9.  
  10. String(1),
  11. Boolean(2),
  12. Float(3),
  13. Integer(4),
  14. Long(5);
  15.  
  16. private int value;
  17.  
  18. private KDataType(int value) {
  19. this.value = value;
  20. }
  21.  
  22. public int getValue() {
  23. return value;
  24. }
  25. }
  26.  
  27. public <T extends String> void saveItem(T key, Object value, Context context) {
  28. SharedPreferences.Editor editor = PreferenceManager.getDefaultSharedPreferences(context)
  29. .edit();
  30.  
  31. if (value instanceof String) {
  32. editor.putString(key, (String) value);
  33. editor.putInt(key+"_", KDataType.String.getValue());
  34. }
  35. if (value instanceof Boolean) {
  36. editor.putBoolean(key, (Boolean) value);
  37. editor.putInt(key+"_", KDataType.Boolean.getValue());
  38. }
  39. if (value instanceof Float) {
  40. editor.putFloat(key, (Float) value);
  41. editor.putInt(key+"_", KDataType.Float.getValue());
  42. }
  43. if (value instanceof Integer) {
  44. editor.putInt(key, (Integer) value);
  45. editor.putInt(key+"_", KDataType.Integer.getValue());
  46. }
  47. if (value instanceof Long) {
  48. editor.putLong(key, (Long) value);
  49. editor.putInt(key+"_", KDataType.Long.getValue());
  50. }
  51.  
  52. editor.apply();
  53. }
  54.  
  55. public <T extends String> Object getItem(T key, Context context) {
  56. Integer valueType = PreferenceManager.getDefaultSharedPreferences(context).getInt(key+"_", 0);
  57.  
  58. if (KDataType.Boolean.getValue() == valueType) {
  59. return PreferenceManager.getDefaultSharedPreferences(context).getBoolean(key, false);
  60. }
  61. if (KDataType.Integer.getValue() == valueType) {
  62. return PreferenceManager.getDefaultSharedPreferences(context).getInt(key, 0);
  63. }
  64. if (KDataType.Float.getValue() == valueType) {
  65. return PreferenceManager.getDefaultSharedPreferences(context).getFloat(key, 0);
  66. }
  67. if (KDataType.Long.getValue() == valueType) {
  68. return PreferenceManager.getDefaultSharedPreferences(context).getLong(key, 0);
  69. }
  70. if (KDataType.String.getValue() == valueType) {
  71. return PreferenceManager.getDefaultSharedPreferences(context).getString(key, "");
  72. }
  73. IllegalStateException exception = new IllegalStateException("Variable is not recognised");
  74. throw exception;
  75.  
  76. }
  77.  
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement