- package com.example.garella.apps;
- import android.os.Bundle;
- import android.support.design.widget.FloatingActionButton;
- import android.support.design.widget.Snackbar;
- import android.support.v7.widget.LinearLayoutManager;
- import android.support.v7.widget.RecyclerView;
- import android.view.View;
- import android.support.design.widget.NavigationView;
- import android.support.v4.view.GravityCompat;
- import android.support.v4.widget.DrawerLayout;
- import android.support.v7.app.ActionBarDrawerToggle;
- import android.support.v7.app.AppCompatActivity;
- import android.support.v7.widget.Toolbar;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.widget.TextView;
- import android.widget.Toast;
- import com.example.garella.apps.Common.Common;
- import com.example.garella.apps.Interface.ItemClickListener;
- import com.example.garella.apps.Model.Foodtruck;
- import com.example.garella.apps.ViewHolder.MenuViewHolder;
- import com.firebase.ui.database.FirebaseRecyclerAdapter;
- import com.google.firebase.database.DatabaseReference;
- import com.google.firebase.database.FirebaseDatabase;
- import com.squareup.picasso.Picasso;
- public class Home extends AppCompatActivity
- implements NavigationView.OnNavigationItemSelectedListener {
- FirebaseDatabase database;
- DatabaseReference foodtruck;
- TextView txtFullName;
- RecyclerView recycler_menu;
- RecyclerView.LayoutManager layoutManager;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate (savedInstanceState);
- setContentView (R.layout.activity_home);
- Toolbar toolbar = (Toolbar) findViewById (R.id.toolbar);
- toolbar.setTitle ("food Truck");
- setSupportActionBar (toolbar);
- database = FirebaseDatabase.getInstance ();
- foodtruck = database.getReference ("Foodtruck");
- FloatingActionButton fab = (FloatingActionButton) findViewById (R.id.fab);
- fab.setOnClickListener (new View.OnClickListener () {
- @Override
- public void onClick(View view) {
- Snackbar.make (view, "Replace with your own action", Snackbar.LENGTH_LONG)
- .setAction ("Action", null).show ();
- }
- });
- DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
- ActionBarDrawerToggle toggle = new ActionBarDrawerToggle (
- this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
- drawer.addDrawerListener (toggle);
- toggle.syncState ();
- NavigationView navigationView = (NavigationView) findViewById (R.id.nav_view);
- navigationView.setNavigationItemSelectedListener (this);
- //set name for user
- View headerView = navigationView.getHeaderView (0);
- txtFullName = (TextView)headerView.findViewById (R.id.txtFullName);
- txtFullName.setText (Common.currentUser.getName ());
- //load menu
- recycler_menu = (RecyclerView)findViewById (R.id.recycler_menu);
- recycler_menu.setHasFixedSize (true);
- layoutManager = new LinearLayoutManager (this);
- recycler_menu.setLayoutManager (layoutManager);
- loadMenu();
- }
- private void loadMenu() {
- FirebaseRecyclerAdapter<Foodtruck,MenuViewHolder> adapter = new FirebaseRecyclerAdapter<Foodtruck, MenuViewHolder> (Foodtruck.class,R.layout.menu_item,MenuViewHolder.class,foodtruck) {
- @Override
- protected void populateViewHolder(MenuViewHolder viewHolder, Foodtruck model, int position) {
- viewHolder.txtMenuName.setText (model.getName());
- Picasso.with(getBaseContext ()).load (model.getImage ())
- .into (viewHolder.imageView);
- final Foodtruck clickItem = model;
- viewHolder.setItemClickListener (new ItemClickListener () {
- @Override
- public void onClick(View v, int position, boolean isLongClick) {
- Toast.makeText (Home.this,""+clickItem.getName (), Toast.LENGTH_SHORT).show ();
- }
- });
- }
- };
- recycler_menu.setAdapter (adapter);
- }
- @Override
- public void onBackPressed() {
- DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
- if (drawer.isDrawerOpen (GravityCompat.START)) {
- drawer.closeDrawer (GravityCompat.START);
- } else {
- super.onBackPressed ();
- }
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater ().inflate (R.menu.home, menu);
- return true;
- }
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- return super.onOptionsItemSelected (item);
- }
- @SuppressWarnings("StatementWithEmptyBody")
- @Override
- public boolean onNavigationItemSelected(MenuItem item) {
- // Handle navigation view item clicks here.
- int id = item.getItemId ();
- if (id == R.id.nav_foodtruck) {
- } else if (id == R.id.nav_cart) {
- } else if (id == R.id.nav_order) {
- } else if (id == R.id.nav_location) {
- } else if (id == R.id.nav_logout) {
- }
- DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
- drawer.closeDrawer (GravityCompat.START);
- return true;
- }
- }