在firebase实时数据库android中恢复已删除的孩子



我需要一些帮助来撤消删除的子项,我已经有了显示undo-onclick的snackbar,但我不知道如何恢复子项,它保存在ExpenseBackUp中,但我该如何恢复?知道吗?

delete.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
DatabaseReference reference = FirebaseDatabase.getInstance().getReference().child("Expenses").child(FirebaseAuth.getInstance().getCurrentUser().getUid());
reference.child(postId).removeValue().addOnCompleteListener(new OnCompleteListener<Void>() {

Expense expenseBackUp = new Expense(item, category, date, postId, amount);
@Override
public void onComplete(@NonNull Task<Void> task) {

if (task.isSuccessful()) {
Snackbar.make(rv, item + " has been deleted", Snackbar.LENGTH_LONG).setAction("UNDO", new View.OnClickListener() {
@Override
public void onClick(View view) {
//undo onClick actions

Toast.makeText(ExpensesActivity.this, item+" recovered", Toast.LENGTH_SHORT).show();
}
}).show();
} else {
Toast.makeText(ExpensesActivity.this, "Something went wrong, try again" + task.getException(), Toast.LENGTH_SHORT).show();
}

您正在寻找:

reference.child(postId).setValue(expenseBackUp)

最新更新