Ссылаясь на изображение ниже.Если я хочу создать модуль для отображения всей информации о событиях, таких как registerEventName, registerEventLocation .... Как это сделать?Во второй строке указан идентификатор созданного события, за которым следует идентификатор события.Заранее спасибо.Я хочу отобразить всю информацию из списка событий, созданного всеми пользователями. Скажите, пожалуйста, нужна ли была какая-либо дополнительная информация.

package com.example.jmham.eventuser;
import android.content.Intent;
import android.support.annotation.NonNull;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import com.firebase.ui.database.FirebaseRecyclerOptions;
import com.bumptech.glide.Glide;
import com.example.jmham.eventuser.Model.ListInfo;
import com.firebase.ui.database.FirebaseRecyclerAdapter;
import com.google.firebase.database.DataSnapshot;
import com.google.firebase.database.DatabaseError;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.example.jmham.eventuser.ViewHolder.MenuViewHolder;
import com.firebase.ui.database.FirebaseRecyclerAdapter;
import com.google.firebase.database.DatabaseReference;
import com.google.firebase.database.FirebaseDatabase;
import com.google.firebase.database.Query;
import com.google.firebase.database.ValueEventListener;
import com.google.firebase.storage.FirebaseStorage;
import com.google.firebase.storage.StorageReference;
import com.mancj.materialsearchbar.MaterialSearchBar;
import com.example.jmham.eventuser.Model.User;
import java.util.ArrayList;
import java.util.List;
public class List_Of_Event extends AppCompatActivity {
FirebaseDatabase database;
DatabaseReference eventinfo;
RecyclerView recycle_menu;
RecyclerView.LayoutManager layoutManager;
FirebaseStorage storage;
StorageReference storageRef;
EditText search_edit_text;
FloatingActionButton search_item;
ArrayList<String> fullNameList;
ArrayList<String> profilePicList;
ArrayList<String> contectNumber;
ArrayList<String> EventId;
ArrayList<String> EventLocation;
ArrayList<String> EventName;
ArrayList<String> EventRadiogroup;
ArrayList<String> EventStartDate;
//Search functionality
FirebaseRecyclerAdapter<ListInfo,MenuViewHolder> searchAdapter;
List<String> suggestList = new ArrayList<>();
MaterialSearchBar materialSearchBar;
FirebaseRecyclerAdapter <ListInfo, MenuViewHolder> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list_of_event);
storage = FirebaseStorage.getInstance();
storageRef = storage.getReference();
//search_edit_text = (MaterialSearchBar) findViewById(R.id.search_edit_text);
search_edit_text = (EditText) findViewById(R.id.search_edit_text);
/*
* ArrayList<String> fullNameList;
ArrayList<String> profilePicList;
ArrayList<String> contectNumber;
ArrayList<String> EventId;
ArrayList<String> EventLocation;
ArrayList<String> EventName;
ArrayList<String> EventRadiogroup;
ArrayList<String> EventStartDate; * */
fullNameList = new ArrayList<>();
profilePicList = new ArrayList<>();
contectNumber = new ArrayList<>();
EventId = new ArrayList<>();
EventLocation = new ArrayList<>();
EventName = new ArrayList<>();
EventRadiogroup = new ArrayList<>();
EventStartDate = new ArrayList<>();
/*
search_item.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
Intent search_bar = new Intent(List_Of_Event.this, search_bar.class);
startActivity(search_bar);
finish();
}
}); */
/*
search_edit_text.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
if (!s.toString().isEmpty()){
setAdapter(s.toString());
}
}
});
*/
recycle_menu = (RecyclerView) findViewById(R.id.recycle_menu);
recycle_menu.setHasFixedSize(true);
layoutManager = new LinearLayoutManager(this);
recycle_menu.setLayoutManager(layoutManager);
database = FirebaseDatabase.getInstance();
// eventinfo = database.getReference("ListOfEvent");
System.out.println();
loadMenu();
eventinfo = FirebaseDatabase.getInstance().getReference();
DatabaseReference ref2,ref3,ref4;
ref2 = eventinfo.child("ListOfEvent");
ref3 = ref2.child("ListOfEvent").child();
//DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("ChatRoom").child(str);
ref2.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
// Result will be holded Here
for (DataSnapshot dsp : dataSnapshot.getChildren()) {
EventName.add(String.valueOf(dsp.getValue())); //add result into array list
// Toast.makeText(List_Of_Event.this, EventName, Toast.LENGTH_SHORT).show();
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
//System.out.println(eventinfo.child("ListOfEvent").child(RegisterEventId).child("profileImageUr").toString());
//Search
materialSearchBar = (MaterialSearchBar)findViewById(R.id.searchBar);
materialSearchBar.setHint("Enter your Event");
//materialSearchBar.setSpeechMode(false); No need, becuz we already define it at XML
// loadSuggest(); //Write function to load Sugggest from Firebase
// setAdapter();
materialSearchBar.setLastSuggestions(suggestList);
materialSearchBar.addTextChangeListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// When user type theri text, we wil change list
List<String> suggest = new ArrayList<String>();
for (String search:suggest){
if(search.toLowerCase().contains(materialSearchBar.getText().toLowerCase()))
suggest.add(search);
}
materialSearchBar.setLastSuggestions(suggest);
}
@Override
public void afterTextChanged(Editable s) {
}
});
materialSearchBar.setOnSearchActionListener(new MaterialSearchBar.OnSearchActionListener() {
@Override
public void onSearchStateChanged(boolean enabled) {
//When Search Bar is close
//Restore original adapter
// if(! enabled) recycle_menu.setAdapter(adapter);
}
@Override
public void onSearchConfirmed(CharSequence text) {
// When search finish
//Show result of search adapter
// startSearch(text);
}
@Override
public void onButtonClicked(int buttonCode) {
}
});
// setAdapter(s.toString());
}
/*
private void startSearch(CharSequence text) {
searchAdapter = new FirebaseRecyclerAdapter<ListInfo, MenuViewHolder>(
ListInfo.class;
R.layout.activity_list_of_event,
MenuViewHolder.class,ListInfo.("registerEventName")
) {
@Override
protected void populateViewHolder(MenuViewHolder viewHolder, ListInfo model, int position) {
}
};
}
*/
/* private void loadSuggest(){
storageRef.orderByChild("registerEventName".equals()).addValueListener(new ValueEventListener()
{
}
);
} */
private void loadSuggest(){
eventinfo.child("ListInfo").addListenerForSingleValueEvent(new ValueEventListener(){
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for(DataSnapshot postSnapshot:dataSnapshot.getChildren())
{
ListInfo item = postSnapshot.getValue(ListInfo.class);
suggestList.add(item.getRegisterEventName()); // add name of food to suggest list
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
public void loadMenu(){
Query query = eventinfo.orderByKey();
FirebaseRecyclerOptions<ListInfo> firebaseRecyclerOptions =
new FirebaseRecyclerOptions.Builder<ListInfo>()
.setQuery(query, ListInfo.class)
.build();
adapter = new FirebaseRecyclerAdapter<ListInfo, MenuViewHolder>(firebaseRecyclerOptions) {
@NonNull
@Override
public MenuViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.activity_list,viewGroup,false);
return new MenuViewHolder(view);
}
@Override
protected void onBindViewHolder(@NonNull MenuViewHolder holder, int position, @NonNull ListInfo model) {
System.out.println("test ::"+model.getImageToUpload());
holder.txtRegisterEventStartDate.setText(model.getRegisterEventStartDate());
holder.txtRegisterEventName.setText(model.getRegisterEventName());
holder.txtContact_number.setText(model.getRegisterContactNumber());
holder.txtRegisterEventRadiogroup.setText(model.getRegisterEventRadiogroup());
holder.txtRegisterEventLocation.setText(model.getRegisterEventLocation());
// model = storageReference.child("profileImageUrl").child(fileName)
System.out.println("test ::"+model.getImageToUpload());
Glide.with(getBaseContext()).load(model.getImageToUpload()
).into(holder.imageView);
System.out.println(model.getRegisterEventName());
System.out.println(model.getImageToUpload());
// String URL = FirebaseDatabase.getInstance().getReference().child(model.getRegisterEventId()).child("profileImageUrl");
// System.out.println("TESTURL: "+URL);
// Glide.with(getApplicationContext())
// .load(URL)
// .into(viewHolder.imageView);
System.out.println(model.getRegisterEventName());
System.out.println("Highlight" + model.getImageToUpload());
final ListInfo clickItem = model;
}
};
recycle_menu.setAdapter(adapter);
}
@Override
protected void onStart() {
super.onStart();
adapter.startListening();
}
@Override
protected void onStop() {
super.onStop();
adapter.stopListening();
}
//---
}
//search_item