小编Nig*_*Owl的帖子

Firebase 两次调用 onChildAdded

我正在调用OnChildAddedSearchTextView OnQueryListener 中的方法,该OnChildAdded方法使用方法在对话框中搜索和显示记录。但是当我运行代码时,该OnChildAdded方法似乎两次调用内部代码作为对话框提示两次,日志语句也相同。

下面是该方法的代码:

searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
  mSearchQuery = query.trim();              
  mDatabaseReference.orderByChild("name").startAt(mSearchQuery).addChildEventListener(new ChildEventListener() {
    @Override
      public void onChildAdded(DataSnapshot dataSnapshot, String s) {

        student = dataSnapshot.getValue(Student.class);
        FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
        EnrollOperationFragment enrollOperationFragment =  EnrollOperationFragment.newInstance(student.getName(),student.getId());
        enrollOperationFragment.show(fragmentManager,ENROLL_OPERATION);}
Run Code Online (Sandbox Code Playgroud)

android firebase searchview firebase-realtime-database

5
推荐指数
1
解决办法
2319
查看次数