简体   繁体   English

如何从 firebase 数据库中混洗一个值以及如何显示 recyclerView?

[英]How to shuffle a value from firebase database and how to show recyclerView?

I stored data's in firebase Real Time database and want to retrieve them in shuffled.我将数据存储在 firebase 实时数据库中,并希望以随机方式检索它们。 For example i need to give data's in shuffled for every user uses that application and every time when the user refresh the page it gives randomly shuffled values..例如,我需要为每个使用该应用程序的用户提供混洗的数据,并且每次当用户刷新页面时,它都会提供随机混洗的值。

Because the data was more than 1000 + .. so every time giving a new data for user.因为数据超过1000+..所以每次都给用户一个新的数据。

code代码

protected void onStart() {
    super.onStart();

    DatabaseReference reference = FirebaseDatabase.getInstance().getReference().child("Vacancy");

    FirebaseRecyclerOptions<VacancyModel> options = new FirebaseRecyclerOptions.Builder<VacancyModel>()
            .setQuery(reference.orderByChild("companyname"), VacancyModel.class)
            .build();


    FirebaseRecyclerAdapter<VacancyModel, VacancyViewHolder> adapter =
            new FirebaseRecyclerAdapter<VacancyModel, VacancyViewHolder>(options) {

                @Override
                protected void onBindViewHolder(@NonNull VacancyViewHolder holder, int position, @NonNull final VacancyModel model) {




                    holder.vacompany_name.setText(model.getCompanyname());
                    holder.vajob_type.setText("Job Title: " + model.getJob_title());
                    holder.vatiming.setText(model.getTiming());
                    holder.vatotal_vacancy.setText("Total Vacancy: " +model.getTotal_vacancy());
                    holder.vasp.setText(model.getS_p());
                    holder.vaexpected_vasalary.setText("Expected Salary: " +model.getExpexted_salary());
                    holder.vaarea.setText("Area: " +model.getPincode());
                    holder.vaphone_number.setText("Contact Number: " +model.getContact_number());



                    holder.itemView.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {


                            Intent intent = new Intent(Home.this, VacancyViewActivity.class);
                            intent.putExtra("pid", model.getCompanyID());
                            startActivity(intent);

                        }

                    });
                }


                @NonNull
                @Override
                public VacancyViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
                    View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.vacancy_list_item, viewGroup, false);
                    VacancyViewHolder holder = new VacancyViewHolder(view);
                    return holder;
                }

            };

    recyclerView.setAdapter(adapter);
    adapter.startListening();


}

火力数据库

you are taking wrong RecyclerOptions for this你为此采取了错误的 RecyclerOptions

FirebaseRecyclerOptions use to observe the realtime database thus changes on realtime database is rendered in as sequenced in realtime database FirebaseRecyclerOptions 用于观察实时数据库,因此实时数据库上的更改按实时数据库中的顺序呈现

why don't you use basic recyclerview setups like this .你为什么不使用像这样的基本 recyclerview 设置

databaseReference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {

    for (DataSnapshot dataSnapshot : snapshot.getChildren()) {

        StudentDetails studentDetails dataSnapshot.getValue(StudentDetails.class);

        list.add(studentDetails);
    }

    //shuffle it after getting all the data

    Collections.shuffle(list);

    adapter = new RecyclerViewAdapter(ShowStudentDetailsActivity.this, list);

    recyclerView.setAdapter(adapter);

   //got all the data 
}

@Override
public void onCancelled(DatabaseError databaseError) {

    //cancel

}});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何在 Firebase 的一个 RecyclerView 中显示两个孩子的项目 - How to show items from two children in one RecyclerView from Firebase 如何在RecyclerView中显示Firebase数据库的变量“名称”和“值” - How to display a variable 'name' and 'value' of firebase database in a RecyclerView 随机播放 Firebase 数据库中的项目 - Shuffle items from Firebase Database 在 Recyclerview 中显示来自 Firebase 的数据,按用户名过滤 - 如何? - Show data from Firebase in Recyclerview, filtered on username - How to? 如何在Android Studio的RecyclerView中从Firebase数据库检索arraylist? - How to retrieve arraylist from firebase database in recyclerview in android studio? 如何尝试在RecyclerView中检索值我尝试了很多,但是在Android中将数据库中的数据推送到Firebase后,它从Firebase的ID中检索了空值 - How to Retrieve Value in RecyclerView I tried a lot but it Retrieve a Null Value from Generated ID by Firebase after Push Data in Database in Android 如何从数据库android在recyclerview中显示html.fromhtml文本 - how to show html.fromhtml text in recyclerview from database android 无法将来自 firebase 实时数据库的消息显示到 recyclerview - Unable to show message from firebase realtime database on to recyclerview 如何使用 firebase 数据库在 recyclerview 中打开新活动 - How to open new activity in recyclerview with firebase database 如何从房间数据库中读取所有值并显示到 recyclerview 中? - how to read all value from room data base and show into recyclerview?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM