java
1final FirebaseDatabase database = FirebaseDatabase.getInstance(); 2 3//この下の行の("chatapplication-879e5/database/data")というのは、この画像のとおりに入力したのですが、間違えているのでしょうか? 4 DatabaseReference ref = database.getReference("chatapplication-879e5/database/data"); 5 DatabaseReference usersRef = ref.child("users"); 6 7 Map<String, Users> users = new HashMap<String, Users>(); 8 users.put("alanisawesome", new Users("June 23, 1912", "Alan Turing")); 9 users.put("gracehop", new Users("December 9, 1906", "Grace Hopper")); 10 usersRef.setValue(users); 11 12 //commit完了コールバック 13 DatabaseReference dataRef = ref.child("data"); 14 dataRef.setValue("I'm writing data", new DatabaseReference.CompletionListener() { 15 @Override 16 public void onComplete(DatabaseError databaseError, DatabaseReference databaseReference) { 17 if (databaseError != null) { 18 System.out.println("Data could not be saved " + databaseError.getMessage()); 19 } else { 20 System.out.println("Data saved successfully."); 21 } 22 } 23 }); 24 25 //Post つまり、Push 26 DatabaseReference postsRef = ref.child("posts"); 27 DatabaseReference newPostRef = postsRef.push(); 28 newPostRef.setValue(new Post("gracehop", "Announcing COBOL, a New Programming Language")); 29 30 //データ取得に使うKeyの取得 31 DatabaseReference pushedPostRef = postsRef.push(); 32 String postId = pushedPostRef.getKey(); 33 34 DatabaseReference mPostReference = FirebaseDatabase.getInstance().getReference() 35 .child("posts").child(postId); 36 37 ValueEventListener postListener = new ValueEventListener() { 38 @Override 39 public void onDataChange(DataSnapshot dataSnapshot) { 40 Post post = dataSnapshot.getValue(Post.class); 41 Toast toast2 = Toast.makeText(LocationActivity.this, post.author, Toast.LENGTH_SHORT); 42 toast2.show(); 43 } 44 45 @Override 46 public void onCancelled(DatabaseError databaseError) { 47 } 48 }; 49 mPostReference.addValueEventListener(postListener); 50 51
このように、書いて、Toastを表示させたいのですが、onDataChange( の中にはいれません。
何が原因なのでしょうか?
あなたの回答
tips
プレビュー