我想在我的Android應用程序中使用數據訪問對象和觀察者模式。該應用程序顯示用戶在某一天吃過的餐食列表和卡路里。用戶可以從列表中刪除該項目。關於數據訪問對象和觀察者模式的混淆
的代碼是這樣的:
Activity類使用的方法在進餐數據訪問對象返回列表存儲在餐正餐和熱量
List<Meal> = MealDAO.getAllMeals();
列表型號:
mealModel.setMealsList(mealList)
的膳食模式是
Observable
並傳遞給ListView
適配器這是一個Observer
當用戶從listView中刪除用餐時,活動使用DAO方法從數據庫中刪除用餐。
MealDAO.remove(3);
該活動然後重置模型中的列表,該列表調用notifyObservers並更新適配器。
//後缺失
newMealList = MealDAO.getAllMeals();
mealModel.setMealList(newMealList);
我不確定這是做這件事的好方法,因爲我必須重置mealModel中的列表。有沒有更好的方法來做到這一點,或者這是好嗎?