2016-08-23 69 views
0

我無法在Firebase中存儲一些數據。我基本上想要將鏈接和日期(來自之前的片段)存儲在我的Firebase數據庫中。將數據存儲在Firebase中

我可以存儲鏈接,但日期似乎沒有存儲在我的數據庫上點擊FAB。任何幫助,將不勝感激,相關代碼如下:

public class Details extends AppCompatActivity { 

private static final String KEY_LINK = "link"; 

RequestQueue requestQueue; 

public static final int CONNECTION_TIMEOUT = 10000; 
public static final int READ_TIMEOUT = 15000; 

private RecyclerView rv; 
private CardView cardView; 
FloatingActionButton fab; 
private boolean isChecked = true; 

private List<Detail> detailList = new ArrayList<>(); 

private Vibrator vib; 

private Firebase firebaseRef; 

private static final String FIREBASE_URL = "https://athenajs.firebaseio.com"; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_details); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

     Firebase.setAndroidContext(this); 

     Intent in = getIntent(); 

     firebaseRef = new Firebase(FIREBASE_URL).child("favourites"); 

    //   Get JSON values from previous intent 
     final String link = in.getStringExtra(KEY_LINK); 
     final String date = in.getStringExtra("date"); 

     final Favclick mFav = new Favclick(link, date); 

     final String pushId = firebaseRef.push().getKey(); 

     vib = (Vibrator) this.getSystemService(VIBRATOR_SERVICE); 
     cardView = (CardView) findViewById(R.id.cv); 
     rv = (RecyclerView) findViewById(R.id.rv); 


     fab = (FloatingActionButton) findViewById(R.id.fab); 
     fab.setTag(1); 
     fab.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View view) { 

       final int status = (Integer) view.getTag(); 
       if (status == 1) { 
        fab.setImageResource(R.drawable.ic_favorite_white_48dp); 
        Snackbar.make(view, "Added to favourites!", Snackbar.LENGTH_LONG) 
          .setAction("Action", null).show(); 
        view.setTag(0); 

        firebaseRef.child(pushId).setValue(mFav); 

       } else { 
        fab.setImageResource(R.drawable.ic_favorite_border_white_48dp); 
        Snackbar.make(view, "Removed from favourites!", Snackbar.LENGTH_LONG) 
          .setAction("Action", null).show(); 
        view.setTag(1); 
        firebaseRef.child(pushId).removeValue(null); 
       } 


      } 

     }); 
+0

你可以分享'Favclick'的類定義嗎? –

回答

2

試試這個:

Firebase favRef = firebaseRef.child("favourites"); 

Map<String, String> data = new HashMap<String, String>(); 
data.put("date", date); 
data.put("link", link); 
favRef.push().setValue(data); 

在你的工廠onClick方法。

+0

嘿,謝謝你的回答。我設法用另一種方式解決問題。只要你回答就能實現。雖然欣賞幫助! –