Facebook
From Mammoth Tamarin, 6 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 294
  1. package com.example.garella.apps;
  2.  
  3. import android.os.Bundle;
  4. import android.support.design.widget.FloatingActionButton;
  5. import android.support.design.widget.Snackbar;
  6. import android.support.v7.widget.LinearLayoutManager;
  7. import android.support.v7.widget.RecyclerView;
  8. import android.view.View;
  9. import android.support.design.widget.NavigationView;
  10. import android.support.v4.view.GravityCompat;
  11. import android.support.v4.widget.DrawerLayout;
  12. import android.support.v7.app.ActionBarDrawerToggle;
  13. import android.support.v7.app.AppCompatActivity;
  14. import android.support.v7.widget.Toolbar;
  15. import android.view.Menu;
  16. import android.view.MenuItem;
  17. import android.widget.TextView;
  18. import android.widget.Toast;
  19.  
  20. import com.example.garella.apps.Common.Common;
  21. import com.example.garella.apps.Interface.ItemClickListener;
  22. import com.example.garella.apps.Model.Foodtruck;
  23. import com.example.garella.apps.ViewHolder.MenuViewHolder;
  24. import com.firebase.ui.database.FirebaseRecyclerAdapter;
  25. import com.google.firebase.database.DatabaseReference;
  26. import com.google.firebase.database.FirebaseDatabase;
  27. import com.squareup.picasso.Picasso;
  28.  
  29. public class Home extends AppCompatActivity
  30.         implements NavigationView.OnNavigationItemSelectedListener {
  31.  
  32.     FirebaseDatabase database;
  33.     DatabaseReference foodtruck;
  34.  
  35.     TextView txtFullName;
  36.  
  37.     RecyclerView recycler_menu;
  38.     RecyclerView.LayoutManager layoutManager;
  39.  
  40.  
  41.     @Override
  42.     protected void onCreate(Bundle savedInstanceState) {
  43.         super.onCreate (savedInstanceState);
  44.         setContentView (R.layout.activity_home);
  45.  
  46.         Toolbar toolbar = (Toolbar) findViewById (R.id.toolbar);
  47.         toolbar.setTitle ("food Truck");
  48.         setSupportActionBar (toolbar);
  49.  
  50.         database = FirebaseDatabase.getInstance ();
  51.         foodtruck = database.getReference ("Foodtruck");
  52.  
  53.  
  54.  
  55.         FloatingActionButton fab = (FloatingActionButton) findViewById (R.id.fab);
  56.         fab.setOnClickListener (new View.OnClickListener () {
  57.             @Override
  58.             public void onClick(View view) {
  59.                 Snackbar.make (view, "Replace with your own action", Snackbar.LENGTH_LONG)
  60.                         .setAction ("Action", null).show ();
  61.             }
  62.         });
  63.  
  64.         DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
  65.         ActionBarDrawerToggle toggle = new ActionBarDrawerToggle (
  66.                 this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
  67.         drawer.addDrawerListener (toggle);
  68.         toggle.syncState ();
  69.  
  70.         NavigationView navigationView = (NavigationView) findViewById (R.id.nav_view);
  71.         navigationView.setNavigationItemSelectedListener (this);
  72.  
  73.         //set name for user
  74.         View headerView = navigationView.getHeaderView (0);
  75.         txtFullName = (TextView)headerView.findViewById (R.id.txtFullName);
  76.         txtFullName.setText (Common.currentUser.getName ());
  77.  
  78.         //load menu
  79.         recycler_menu = (RecyclerView)findViewById (R.id.recycler_menu);
  80.         recycler_menu.setHasFixedSize (true);
  81.         layoutManager = new LinearLayoutManager (this);
  82.         recycler_menu.setLayoutManager (layoutManager);
  83.  
  84.         loadMenu();
  85.  
  86.  
  87.     }
  88.  
  89.     private void loadMenu() {
  90.  
  91.         FirebaseRecyclerAdapter<Foodtruck,MenuViewHolder> adapter = new FirebaseRecyclerAdapter<Foodtruck, MenuViewHolder> (Foodtruck.class,R.layout.menu_item,MenuViewHolder.class,foodtruck) {
  92.             @Override
  93.             protected void populateViewHolder(MenuViewHolder viewHolder, Foodtruck model, int position) {
  94.                 viewHolder.txtMenuName.setText (model.getName());
  95.                 Picasso.with(getBaseContext ()).load (model.getImage ())
  96.                         .into (viewHolder.imageView);
  97.                 final Foodtruck clickItem = model;
  98.                 viewHolder.setItemClickListener (new ItemClickListener () {
  99.                     @Override
  100.                     public void onClick(View v, int position, boolean isLongClick) {
  101.                         Toast.makeText (Home.this,""+clickItem.getName (), Toast.LENGTH_SHORT).show ();
  102.                     }
  103.                 });
  104.             }
  105.         };
  106.         recycler_menu.setAdapter (adapter);
  107.     }
  108.  
  109.     @Override
  110.     public void onBackPressed() {
  111.         DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
  112.         if (drawer.isDrawerOpen (GravityCompat.START)) {
  113.             drawer.closeDrawer (GravityCompat.START);
  114.         } else {
  115.             super.onBackPressed ();
  116.         }
  117.     }
  118.  
  119.     @Override
  120.     public boolean onCreateOptionsMenu(Menu menu) {
  121.         // Inflate the menu; this adds items to the action bar if it is present.
  122.         getMenuInflater ().inflate (R.menu.home, menu);
  123.         return true;
  124.     }
  125.  
  126.     @Override
  127.     public boolean onOptionsItemSelected(MenuItem item) {
  128.  
  129.         return super.onOptionsItemSelected (item);
  130.     }
  131.  
  132.     @SuppressWarnings("StatementWithEmptyBody")
  133.     @Override
  134.     public boolean onNavigationItemSelected(MenuItem item) {
  135.         // Handle navigation view item clicks here.
  136.         int id = item.getItemId ();
  137.  
  138.         if (id == R.id.nav_foodtruck) {
  139.  
  140.         } else if (id == R.id.nav_cart) {
  141.  
  142.         } else if (id == R.id.nav_order) {
  143.  
  144.         } else if (id == R.id.nav_location) {
  145.  
  146.         } else if (id == R.id.nav_logout) {
  147.  
  148.         }
  149.  
  150.         DrawerLayout drawer = (DrawerLayout) findViewById (R.id.drawer_layout);
  151.         drawer.closeDrawer (GravityCompat.START);
  152.         return true;
  153.     }
  154. }
  155.