2017-02-12 52 views
0

我目前正在創建一個用戶可以發佈的發佈系統。當用戶查看帖子時,他們將能夠轉到下一個帖子,即「下一帖」按鈕。如何調用存儲在Firebase中的下一個ID?

nextpost = (Button) findViewById(R.id.nextpost); 
nextpost.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     ValueEventListener postListener = new ValueEventListener() { 
      @Override 
      public void onDataChange(DataSnapshot dataSnapshot) { 
       post = dataSnapshot.getValue(FirebaseDatabase.class); 
       checkpostid = marker.getSnippet(); 
       checkpostid += 1; 
       Toast.makeText(MainActivity.this, 
            "" + checkpostid, Toast.LENGTH_SHORT).show(); 
       ViewPostDetails(); 
      } 

      public void onCancelled(DatabaseError databaseError) { 
       // Getting Post failed, log a message 
       Log.w(TAG, "loadPost:onCancelled", databaseError.toException()); 
      }; 
     }; 
     mDatabaseComPostRef.addValueEventListener(postListener); 

「checkpostid」會檢查帖子的當前ID,但我無法增加它並轉到下一個ID。

在我們的數據庫截圖中,例如,在表「Post」中,假設當前的帖子是「KcY8F7H-jW_4sW4FoKP」。一旦用戶點擊「nextpost」按鈕,它應該調用Firebase數據庫中的下一個ID「KcY8LxewB_SSKl-HYkW」。

鏈接到我們的數據庫截圖:

enter image description here

+2

您已經在您的問題中包含了JSON樹圖片的鏈接。請用實際的JSON替換爲文本,您可以通過單擊[您的Firebase數據庫控制檯](https://console.firebase.google.com/project/_/database/data/)中的導出JSON鏈接輕鬆獲取該文本。 。將JSON作爲文本可以搜索,使我們能夠輕鬆使用它來測試您的實際數據,並將其用於我們的答案中,並且通常只是一件好事。 –

回答

0

一個可能的解決方案是將生成的ID也保存在名爲另一個帖子ID集合。所以你可以輕鬆地做你所需要的。

+0

你是什麼意思?製作一個數組? –

+0

是的!一個id的數組。 – Eumagnun

+0

所以我不得不把所有保存的ID放入數組中?如果用戶創建新帖子怎麼辦?有沒有辦法直接調用Firebase中的下一個元素? –

相關問題