/** 获取闹钟 */ public static ArrayList<AnTimer> getTimer(Context context, String drug_id) { ArrayList<AnTimer> array = new ArrayList<AnTimer>(); SharedPreferences pref = context.getSharedPreferences(TIMER_SAVE_PATH + drug_id, Activity.MODE_PRIVATE); int count = pref.getInt("count", 0); for (int i = 0; i < count; i++) { String id = pref.getString("id" + i, ""); String name = pref.getString("name" + i, ""); String text = pref.getString("text" + i, ""); int hour = pref.getInt("hour" + i, -1); int min = pref.getInt("min" + i, -1); int method = pref.getInt("method" + i, 0); String times = pref.getString("times" + i, "0"); AnTimer timer = new AnTimer(id, name, text, hour, min, method); timer.setEnable(pref.getBoolean("enable" + i, true)); // 默认可用 timer.setTimes(times); array.add(timer); } return array; }
/** 重写闹钟 */ public static void writeTimer(Context context, String drug_id, ArrayList<AnTimer> array) { int count = array.size(); SharedPreferences.Editor prefs = context.getSharedPreferences(TIMER_SAVE_PATH + drug_id, Activity.MODE_PRIVATE).edit(); prefs.putInt("count", count); AnTimer old_timer = null; for (int i = 0; i < count; i++) { old_timer = array.get(i); prefs.putString("id" + i, old_timer.getId()); prefs.putString("name" + i, old_timer.getName()); prefs.putString("text" + i, old_timer.getText()); prefs.putInt("hour" + i, old_timer.getHour()); prefs.putInt("min" + i, old_timer.getMinute()); prefs.putInt("method" + i, old_timer.getMethod()); prefs.putBoolean("enable" + i, old_timer.isEnable()); prefs.putString("times" + i, old_timer.getTimes()); } prefs.commit(); }
/** 修改闹钟 */ public static void alterTimer(Context context, String drug_id, AnTimer timer) { ArrayList<AnTimer> array = getTimer(context, drug_id); int index = -1; for (int i = 0; i < array.size(); i++) { if (array.get(i).getId().equals(timer.getId())) index = i; } if (index != -1) { SharedPreferences.Editor prefs = context.getSharedPreferences(TIMER_SAVE_PATH + drug_id, Activity.MODE_PRIVATE).edit(); prefs.putString("id" + index, timer.getId()); // 最新放在最前面 prefs.putString("name" + index, timer.getName()); prefs.putString("text" + index, timer.getText()); prefs.putInt("hour" + index, timer.getHour()); prefs.putInt("min" + index, timer.getMinute()); prefs.putInt("method" + index, timer.getMethod()); prefs.putBoolean("enable" + index, timer.isEnable()); prefs.putString("times" + index, timer.getTimes()); prefs.commit(); } }
/** 添加闹钟 */ public static void addTimer(Context context, String drug_id, AnTimer new_timer) { if (new_timer == null) return; ArrayList<AnTimer> array = getTimer(context, drug_id); int count = array.size(); SharedPreferences.Editor prefs = context.getSharedPreferences(TIMER_SAVE_PATH + drug_id, Activity.MODE_PRIVATE).edit(); prefs.putInt("count", count + 1); prefs.putString("id" + 0, new_timer.getId()); // 最新放在最前面 prefs.putString("name" + 0, new_timer.getName()); prefs.putString("text" + 0, new_timer.getText()); prefs.putInt("hour" + 0, new_timer.getHour()); prefs.putInt("min" + 0, new_timer.getMinute()); prefs.putInt("method" + 0, new_timer.getMethod()); prefs.putBoolean("enable" + 0, new_timer.isEnable()); prefs.putString("times" + 0, new_timer.getTimes()); AnTimer old_timer = null; for (int i = 0; i < count; i++) { old_timer = array.get(i); prefs.putString("id" + (i + 1), old_timer.getId()); prefs.putString("name" + (i + 1), old_timer.getName()); prefs.putString("text" + (i + 1), old_timer.getText()); prefs.putInt("hour" + (i + 1), old_timer.getHour()); prefs.putInt("min" + (i + 1), old_timer.getMinute()); prefs.putInt("method" + (i + 1), old_timer.getMethod()); prefs.putBoolean("enable" + (i + 1), old_timer.isEnable()); prefs.putString("times" + (i + 1), old_timer.getTimes()); } prefs.commit(); }