我想更新 firebase 数据库中的单个值

Axa*_*hia 4 android firebase android-recyclerview firebase-realtime-database

我使用了 RecyclerView 和 Adapter 以及适配器的 inflte item_list,每一行都有一个喜欢的按钮和文本,用于存储喜欢的值我想在用户单击喜欢的按钮时更新值。

这是我的 firebase 数据库结构2

And*_*diM 6

如果您发布了适配器的代码会更好。但是让我们假设除了喜欢按钮之外,您还显示每个报价的当前喜欢。

因此,从适配器的项目中获取 current like 的值并将其增加 1。

然后你需要调用这个:

DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference("QuoteList").child("Quote");
mDatabase.child("likes").setValue(mItem.totalLikes + 1);
Run Code Online (Sandbox Code Playgroud)

或者

您可以从 firebase 获取当前值并像这样更新它:

 DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference("QuoteList").child("Quote").child("likes");
        mDatabase.addListenerForSingleValueEvent(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                long totalLikes =(long) dataSnapshot.getValue();
                mDatabase.setValue(totalLikes + 1);
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });
Run Code Online (Sandbox Code Playgroud)

希望它会帮助你。