将数据保存到Firebase实时数据库-Android

时间:2018-10-05 18:14:36

标签: android firebase firebase-realtime-database

当我将数据推送到Firebase实时数据库时,data(String istek)被保存为null。我该如何解决?

我的数据库:Users / Drivers /İstekler/ istek =“”

代码:

 mistek=(EditText)findViewById(R.id.istekler);
         mGonder =(Button)findViewById(R.id.istekGonder);
         istek=mistek.getText().toString();
        mGonder.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String userId = FirebaseAuth.getInstance().getCurrentUser().getUid();
                DatabaseReference istekRef = FirebaseDatabase.getInstance().getReference().child("Users").child("Istekler").child(userId);
                String requestId = istekRef.push().getKey();

                HashMap map = new HashMap();
                map.put("istek", istek);

                istekRef.child(requestId).updateChildren(map);

1 个答案:

答案 0 :(得分:2)

添加:

istek = mistek.getText().toString();

在您的setOnClickListener内:

mistek= (EditText) findViewById(R.id.istekler);
mGonder = (Button) findViewById(R.id.istekGonder);
mGonder.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String userId = FirebaseAuth.getInstance().getCurrentUser().getUid();
                DatabaseReference istekRef = FirebaseDatabase.getInstance().getReference().child("Users").child("Istekler").child(userId);
                String requestId = istekRef.push().getKey();
                istek = mistek.getText().toString(); // get the text from EditText here

                HashMap map = new HashMap();
                map.put("istek", istek); // Push ...

                istekRef.child(requestId).updateChildren(map);

问题:当您点击Button时,实际上是没有收到文本。您还需要声明EditText-> final