Java 如何对实时firebase数据库进行时间戳/解码以获得时间顺序显示
我试图让这个实时数据库按时间顺序显示我的“文本”。它不断地按字母顺序从上到下添加我的“文本”。我肯定我需要添加时间戳来修复它,但我不是100%确定 以下是我的主要活动:Java 如何对实时firebase数据库进行时间戳/解码以获得时间顺序显示,java,android,firebase,firebase-realtime-database,timestamp,Java,Android,Firebase,Firebase Realtime Database,Timestamp,我试图让这个实时数据库按时间顺序显示我的“文本”。它不断地按字母顺序从上到下添加我的“文本”。我肯定我需要添加时间戳来修复它,但我不是100%确定 以下是我的主要活动: > package com.example.osada; > > import android.os.Bundle; > import android.view.View; > import android.widget.EditText; > i
> package com.example.osada;
>
> import android.os.Bundle;
> import android.view.View;
> import android.widget.EditText;
> import android.widget.TextView;
>
> import androidx.appcompat.app.AppCompatActivity;
>
> import com.google.firebase.database.DataSnapshot;
> import com.google.firebase.database.DatabaseError;
> import com.google.firebase.database.DatabaseReference;
> import com.google.firebase.database.FirebaseDatabase;
> import com.google.firebase.database.ValueEventListener;
>
> import java.text.SimpleDateFormat;
> import java.util.Date;
>
> public class MainActivity extends AppCompatActivity {
>
> private DatabaseReference myDatabase;
> SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd G 'at' HH:mm:ss z");
> String currenttime = sdf.format(new Date());
>
> @Override
> protected void onCreate(Bundle savedInstanceState) {
> super.onCreate(savedInstanceState);
> setContentView(R.layout.activity_main);
>
> myDatabase = FirebaseDatabase.getInstance() .getReference("message1");
>
> TextView textmessage = findViewById(R.id.text);
>
> myDatabase.addValueEventListener(new ValueEventListener() {
> @Override
> public void onDataChange(DataSnapshot snapshot) {
>
>
> textmessage.setText(snapshot.getValue().toString());
>
>
>
> }
>
> @Override
> public void onCancelled(DatabaseError error) {
> textmessage.setText("Error, please try again later.");
> }
> });
> }
> public void sendMessage (View view){
>
> EditText myEditText = findViewById(R.id.editTextTextPersonName);
> myDatabase.push().child("Jon").setValue(myEditText.getText().toString());
> myEditText.setText("");
> System.out.println();
>
>
>
>
> }
> }
这是Firebase实时数据库显示的内容:
这就是我的android模拟器显示的内容
我肯定我需要添加一个时间戳来修复它,但我不是100%确定
实际上,您需要添加一个可以保存时间戳的新属性。这可以通过我在以下帖子中的回答来实现:
嘿,joneyboy21!我能帮你了解其他信息吗?如果你认为我的答案对你有帮助,请考虑通过点击复选来接受它。✔️) 在投票箭头下方的左侧。应该将颜色更改为绿色。我非常感谢。谢谢!