Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class EventsDisplayActivity extends AppCompatActivity {
- private EditText mSearchField;
- private ImageButton mSearchButton;
- private RecyclerView mResultsList;
- private DatabaseReference mEventDatabase;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_events_display);
- mEventDatabase = FirebaseDatabase.getInstance().getReference("Events");
- mSearchField = findViewById(R.id.editTextSearch);
- mSearchButton = findViewById(R.id.imageButtonSearch);
- mResultsList = findViewById(R.id.result_list);
- mResultsList.setHasFixedSize(true);
- mResultsList.setLayoutManager(new LinearLayoutManager(this));
- mSearchButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- String searchText = mSearchField.getText().toString();
- firebaseEventSearch(searchText);
- }
- });
- }
- private void firebaseEventSearch(String searchText) {
- Toast.makeText(EventsDisplayActivity.this, "Started Search", Toast.LENGTH_LONG).show();
- Query firebaseSearchQuery = mEventDatabase.orderByChild("name").startAt(searchText).endAt(searchText + "uf8ff");
- FirebaseRecyclerAdapter<Events, EventsViewHolder> firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Events, EventsViewHolder>(
- Events.class,
- R.layout.event_list,
- EventsViewHolder.class,
- firebaseSearchQuery
- ) {
- @Override
- protected void onBindViewHolder(@NonNull EventsViewHolder viewHolder, int position, @NonNull Events model) {
- viewHolder.setDetails(getApplicationContext(), model.getName(), model.getImage(), model.getDescription());
- }
- @NonNull
- @Override
- public EventsViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
- return null;
- }
- };
- mResultsList.setAdapter(firebaseRecyclerAdapter);
- }
- public static class EventsViewHolder extends RecyclerView.ViewHolder{
- View mView;
- public EventsViewHolder(View eventView) {
- super(eventView);
- mView = eventView;
- }
- public void setDetails(Context context, String eventName, String eventImage, String eventDescription){
- TextView event_name = mView.findViewById(R.id.event_name);
- ImageView event_image = mView.findViewById(R.id.event_image);
- TextView event_description = mView.findViewById(R.id.event_description);
- event_name.setText(eventName);
- Glide.with(context).load(eventImage).into(event_image);
- event_description.setText(eventDescription);
- }
- }
- }
Add Comment
Please, Sign In to add comment