我正在构建一个 Android 应用程序,允许用户对广告牌前 100 名上的每首歌曲发表评论(我从 JSON 文件中解析了该信息)。我将如何存储评论(最好使用 Firebase)并在发表新评论后显示和刷新它们?
我假设每首歌曲都有一个唯一的 ID。所以对于每首歌你能做的是——
-
获取歌曲参考
private DatabaseReference mDatabase;
mDatabase = FirebaseDatabase.getInstance().getReference();
mSongRef = mDatabase.child("SongID");
-
每当有人评论一首歌曲时,push() Comment 类的对象作为该歌曲的子节点:
String commentKey = mSongRef.push().getKey();
mSongRef.child(commentKey).setValue(comment);
-
现在获取新添加的评论
mSongRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Comment comment = dataSnapshot.getValue(Comment.class);
Log.d(TAG, "Comment: " + comment.getCommentText() + ", User: " + comment.getUsername());
}
@Override
public void onCancelled(DatabaseError error) {
// Failed to read value
Log.w(TAG, "Failed to read value.", error.toException());
}});
现在您有了最新数据,您可以将评论添加到列表中并更新回收器/列表视图。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)