Java Firebase数据库用户访问customlistview

Java Firebase数据库用户访问customlistview,java,android,Java,Android,我的firebase数据库中有用户,我想将所有用户添加到我的customlistview中。我该怎么做?我被这根绳子弄糊涂了 String[] names={ "A 1", "B 2", "C 3" }; 我的主要活动 import android.view.Menu; import android.view.MenuItem; import and

我的firebase数据库中有用户,我想将所有用户添加到我的customlistview中。我该怎么做?我被这根绳子弄糊涂了

String[] names={


            "A 1",
            "B 2",
            "C 3"

    };
我的主要活动

import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ListView;
import android.widget.Toast;

import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.SearchView;
import androidx.appcompat.widget.Toolbar;



public class MainActivityCustonlistViewnew extends AppCompatActivity {
    private ArrayList<UserInfo> userInfos;
    private CustomListAdapter customListAdapter;
    private ListView customListView;



    private FirebaseDatabase firebaseDatabase = FirebaseDatabase.getInstance();
    private DatabaseReference databaseReference = firebaseDatabase.getReference();

    private  DatabaseReference UserData = databaseReference.child("Users");


    private List<String> friends = new ArrayList<>();

    String[] names={


            "A 1",
            "B 2",
            "C 3"

    };

    private String[] professions={
            "Rank 1",
            "Rank 2",
            "Rank 3"

    };
    private int[] photos={
            R.drawable.sample_5,
            R.drawable.sample_1,
            R.drawable.sample_6

    };


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_maincustomlistview);
        setSupportActionBar((Toolbar)findViewById(R.id.toolbar));



        customListView=(ListView)findViewById(R.id.custom_list_view);
        userInfos=new ArrayList<>();
        Arrays.sort(names, String.CASE_INSENSITIVE_ORDER);
        customListAdapter=new CustomListAdapter(userInfos,MainActivityCustonlistViewnew.this);
        customListView.setAdapter(customListAdapter);
        getDatas();
        customListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                Toast.makeText(MainActivityCustonlistViewnew.this, "Name : " + names[i] + "\n Profession : " + professions[i], Toast.LENGTH_SHORT).show();
            }
        });




    }

    // getting all the datas
    private void getDatas(){




        for(int count=0;count<names.length;count++){

            userInfos.add(new UserInfo(names[count],professions[count],photos[count]));

        }
    }



    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.search_option,menu);
        MenuItem menuItem=menu.findItem(R.id.search);
        SearchView searchView=(SearchView)menuItem.getActionView();
        searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
            @Override
            public boolean onQueryTextSubmit(String query) {
                return true;
            }

            @Override
            public boolean onQueryTextChange(String newText) {
                newText=newText.toString();
                ArrayList<UserInfo> newUserInfos=new ArrayList<>();

                for(UserInfo userInfo:userInfos){
                    String name=userInfo.getName().toLowerCase();
                    String profession=userInfo.getProfession().toLowerCase();
                    if(name.contains(newText) || profession.contains(newText)){
                        newUserInfos.add(userInfo);
                    }
                }
                customListAdapter.filterResult(newUserInfos);
                customListAdapter.notifyDataSetChanged();
                return false;
            }
        });
        return super.onCreateOptionsMenu(menu);
    }
}
导入android.view.Menu;
导入android.view.MenuItem;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.ListView;
导入android.widget.Toast;
导入com.google.firebase.database.DatabaseReference;
导入com.google.firebase.database.FirebaseDatabase;
导入java.util.ArrayList;
导入java.util.array;
导入java.util.List;
导入androidx.appcompat.app.appcompat活动;
导入androidx.appcompat.widget.SearchView;
导入androidx.appcompat.widget.Toolbar;
公共类MainActivityCustomListViewNew扩展了AppCompatActivity{
私有ArrayList用户信息;
私有CustomListAdapter CustomListAdapter;
私有ListView自定义ListView;
私有FirebaseDatabase FirebaseDatabase=FirebaseDatabase.getInstance();
私有数据库引用DatabaseReference=firebaseDatabase.getReference();
私有DatabaseReference UserData=DatabaseReference.child(“用户”);
private List friends=new ArrayList();
字符串[]名称={
“A 1”,
“B 2”,
“C3”
};
私人字符串[]专业={
“排名1”,
“排名2”,
“排名3”
};
私人int[]照片={
R.可拉拔样品_5,
R.可拉拔样品1,
R.可拉拔样品_6
};
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u maincustomlistview);
setSupportActionBar((工具栏)findViewById(R.id.Toolbar));
customListView=(ListView)findViewById(R.id.custom\u list\u视图);
userInfos=newarraylist();
Arrays.sort(名称、字符串、不区分大小写的顺序);
customListAdapter=new customListAdapter(userInfos,MainActivityCustomListViewNew.this);
setAdapter(customListAdapter);
getDatas();
customListView.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
公共无效onItemClick(AdapterView AdapterView、View视图、int i、long l){
Toast.makeText(mainActivityCustomListViewNew.this,“名称:”+names[i]+“\n专业:”+professions[i],Toast.LENGTH\u SHORT.show();
}
});
}
//获取所有数据
私有void getDatas(){

对于(int count=0;count)请提供从Firebase检索用户列表的代码这是另一个问题,我不知道如何做到。嘿嘿