如何通过在数组中查找项目来将数据添加到某个基于火的子数组

时间:2016-12-31 17:02:20

标签: java arrays listview firebase firebase-realtime-database

我有一个firebase数据库。数据库结构是这样的。

Mainparent
  |

employees
  | 

employee_1
  |

name  
 Joe Bloggs

clock-on    (Data to add when button is clicked)

我想要找到名称child并在其上添加时钟数据。我的java代码我使用name-child并将其添加到我的应用程序中的listview,然后可以选择。

  mRootRef = new Firebase("my firebase url");
    final ListView elv = (ListView)findViewById(R.id.lvnames);
    mRootRef.child("employees").addChildEventListener(new ChildEventListener() {
        @Override
        public void onChildAdded(final DataSnapshot dataSnapshot, String s) {
            final ArrayAdapter jlistAdapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_activated_1, webstreamsArray);


 elv.setAdapter(jlistAdapter);
  final String streamname = dataSnapshot.child("Fullname").getValue(String.class) ;
  jlistAdapter.notifyDataSetChanged();
            webstreamsArray.add(streamname);
            elv.setOnItemClickListener(new AdapterView.OnItemClickListener() {


                @Override
                public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {

                   // **here i want to add the required data to my clockon-child. how do i add it to just the name selected from the list**
                      }
            });

如何将数据上的时钟添加到所选名称,就像它在主父级下添加自己的子项时一样。对不起,如果这听起来令人困惑哈哈。

1 个答案:

答案 0 :(得分:0)

我最终做的是设置fire base auth。然后它会给用户一个Uid。我将id转发到那里的数据库文件而不是employee_1我现在有id。

接下来我告诉我的应用程序寻找一个firebase用户并得到一个这个叫做用户的实例,然后使用user来查找id

    FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
                    String userid = user.getUid().toString();

String clockonstring = tvClock.getText().toString();
                    mrootRef.child("Employees").child(userid).child("clockontime").setValue(clockonstring);