Coding Java for live

MainActivity.java

package project.;

import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.NavigationView;
import android.support.design.widget.TabLayout;
import android.support.v4.view.GravityCompat;
import android.support.v4.view.ViewPager;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.MenuItem;

import com.google.firebase.auth.FirebaseAuth;

public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener{

private ViewPager viewPager;
private DrawerLayout drawer;
private TabLayout tabLayout;
private String[] pageTitle = {“Home”, “Category”};
private FirebaseAuth mAuth;
private SessionManager sessionManager;
private static Context context;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

context = this;
sessionManager = new SessionManager(this);
mAuth = FirebaseAuth.getInstance();

viewPager = (ViewPager)findViewById(R.id.view_pager);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
drawer = (DrawerLayout) findViewById(R.id.drawerLayout);

setSupportActionBar(toolbar);

//create default navigation drawer toggle
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, drawer, toolbar,
R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.addDrawerListener(toggle);
toggle.syncState();

//setting Tab layout (number of Tabs = number of ViewPager pages)
tabLayout = (TabLayout) findViewById(R.id.tab_layout);
for (int i = 0; i < 2; i++) {
tabLayout.addTab(tabLayout.newTab().setText(pageTitle[i]));
}

//set gravity for tab bar
tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);

//handling navigation view item event
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
assert navigationView != null;
navigationView.setNavigationItemSelectedListener(this);

//set viewpager adapter
ViewPagerAdapter pagerAdapter = new ViewPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(pagerAdapter);

//change Tab selection when swipe ViewPager
viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));

//change ViewPager page when tab selected
tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
viewPager.setCurrentItem(tab.getPosition());
}

@Override
public void onTabUnselected(TabLayout.Tab tab) {

}

@Override
public void onTabReselected(TabLayout.Tab tab) {

}
});
}

@Override
public boolean onNavigationItemSelected(MenuItem item) {
int id = item.getItemId();

if (id == R.id.go) {
Intent intent = new Intent(this, MainActivity.class);
startActivity(intent);
} else if (id == R.id.close) {
AlertDialog.Builder alertDialog = new AlertDialog.Builder(MainActivity.this);

// Setting Dialog Title
alertDialog.setTitle(“KONFIRMASI”);

// Setting Dialog Message
alertDialog.setMessage(“Anda yakin akan Log Out?”);

// Setting Icon to Dialog
alertDialog.setIcon(R.drawable.seru2);

// Setting Positive “Yes” Button
alertDialog.setPositiveButton(“Ya”, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int which) {
mAuth.signOut();
Intent back = new Intent(MainActivity.this, LoginActivity.class);
startActivity(back);
finish();
}
});
// Showing Alert Message
alertDialog.show();
}

drawer.closeDrawer(GravityCompat.START);
return true;
}

@Override
public void onBackPressed() {
assert drawer != null;
if (drawer.isDrawerOpen(GravityCompat.START)) {
drawer.closeDrawer(GravityCompat.START);
} else {
super.onBackPressed();
}
}

}

Leave a comment