所以,我制作了一个应用程序来列出正在运行的事件,它有2个标签,1个显示将要发生的事件,按日期排序,顶部接近当前日期,另一个显示最近发生的事件,我也订购了当前日期附近的那些。我有Tabs准备,登录,loggout,回收者视图。接近我需要的所有内容,但我无法想到一种获取Firebase数据库和从Firebase数据库读取数据的方法。经过几次尝试后,我想按日期对节点进行排序,采用以下格式:
node RunEvent
node 20171202
node nameEvent
other atribs
node nameEvent2
other atrib
node 20171207
node nameEvent3
other atribs
我的问题是:
- 我如何列出我的活动,我尝试了几个听众,但没有运气(或技能,我从开始开始)。 我回家后会添加代码。
答案 0 :(得分:0)
假设您的数据库看起来与此类似:
Firebase-root
|
--- RunEvent
|
--- 20171202
| |
| --- nameEvent: "First Event"
|
--- 20171207
|
--- nameEvent: "Second Event"
请使用以下代码:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference runEventRef = rootRef.child("RunEvent");
ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String nameEvent = ds.child("nameEvent").getValue(String.class);
Log.d("TAG", nameEvent);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {}
};
runEventRef.addListenerForSingleValueEvent(eventListener);
您的输出将是:
First Event
Second Event