火力地堡DatabaseReference
问题描述:
我有2 DatabaseReference:火力地堡DatabaseReference
- 1是 “活动” 的孩子
- 2是 “完成” 的孩子
我想从 “积极” 到 “结束” 之举的孩子,但我无法做到。任何想法如何?谢谢。
我有这样的代码:
public class SingleGameActivity extends AppCompatActivity {
private DatabaseReference mDatabaseActivGame;
private DatabaseReference mDatabaseFinishGame;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_single_game);
game_key = getGameKey();
mDatabaseActivGame = FirebaseDatabase.getInstance().getReference().child("Games").child("Active").child(game_key);
mDatabaseGame.keepSynced(true);
mDatabaseFinishGame = FirebaseDatabase.getInstance().getReference().child("Games").child("Finish").child(game_key);
mDatabaseGame.keepSynced(true);
...
内活跃的孩子,我有game_key
和内,多个子值。
我想将其移至完成状态,因为recyclerview显示我为活动孩子。谢谢!
答
下面的代码将来自"your-project-root/Games/Active/game_key"
// mDatabaseActivGame is still the same like in your sample
mDatabaseActivGame.addListenerForSingleValueEvent(new ValueEventListener() {
... onDataChange(DataSnapshot dataSnapshot) {
// data is in dataSnapshot object
// do something here
}
...
});
然后阅读值下面的代码将在"your-project-root/Games/Finish/game_key"
// mDatabaseFinishGame is still the same like in your sample
mDatabaseFinishGame.setValue(yourValueHere);
写的资料,因此将它们结合起来,我们得到这样的代码:
mDatabaseActivGame.addListenerForSingleValueEvent(new ValueEventListener() {
... onDataChange(DataSnapshot dataSnapshot) {
mDatabaseFinishGame.setValue(dataSnapshot);
}
...
});
我没有自己测试过,但理论上它应该起作用。希望这可以帮助