2 回答
TA貢獻1828條經驗 獲得超3個贊
首先,UserViewModel像在 中那樣在您的適配器類中進行初始化MainActivity,然后調用 delete 函數。
holder.delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
userModel.deleteItem(users);
}
});
在類中添加此功能UserModel。
public void deleteItem(User user) = repo.deleteItem(user);
在UserRepository課堂上,調用Delete函數。
public void deleteItem(User user) {
userDb.userDao().Delete(user);
}
TA貢獻1825條經驗 獲得超6個贊
嘗試使用實時數據觀察數據庫的變化,無論何時執行任何操作,添加或刪除(在數據庫中),在您的觀察者中為回收者視圖刷新該數據
為您的適配器設置點擊監聽器
public interface OnListInteractionListener {
// TODO: Update argument type and name
void onListInteraction(User user);
}
在適配器類
private final OnListInteractionListener mListener;
public UserAdapter(List<User> users, OnListInteractionListener listener,Context context) {
mListener = listener;
}
并在視圖中綁定持有人
holder.delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mListener.onListInteraction(userList.get(position))
}
});
在您的活動/片段中實現該偵聽器,您可以從中訪問 Viewmodel 和 repo
添加回答
舉報
