main flow
git status
This commit is contained in:
@@ -1,17 +1,151 @@
|
||||
package ch.pizzalink.android.activity;
|
||||
|
||||
import android.support.annotation.NonNull;
|
||||
import android.support.design.widget.BottomNavigationView;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.view.GravityCompat;
|
||||
import android.support.v4.widget.DrawerLayout;
|
||||
import android.support.v7.app.AppCompatActivity;
|
||||
import android.os.Bundle;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx;
|
||||
|
||||
import butterknife.BindView;
|
||||
import butterknife.ButterKnife;
|
||||
import butterknife.OnClick;
|
||||
import ch.pizzalink.android.R;
|
||||
import ch.pizzalink.android.fragment.CartFragment;
|
||||
import ch.pizzalink.android.fragment.InfoFragment;
|
||||
import ch.pizzalink.android.fragment.OrderFragment;
|
||||
import ch.pizzalink.android.fragment.ProfileFragment;
|
||||
import ch.pizzalink.android.view.PizzalinkToolbar;
|
||||
|
||||
public class MainActivity extends BaseActivity {
|
||||
|
||||
@BindView(R.id.drawerLayout) DrawerLayout drawerLayout;
|
||||
@BindView(R.id.pizzalinkToolbar) PizzalinkToolbar pizzalinkToolbar;
|
||||
@BindView(R.id.bottomNavigationView) BottomNavigationViewEx bottomNavigationView;
|
||||
@BindView(R.id.navMenuItem1) TextView navMenuItem1;
|
||||
@BindView(R.id.navMenuItem2) TextView navMenuItem2;
|
||||
@BindView(R.id.navMenuItem3) TextView navMenuItem3;
|
||||
@BindView(R.id.navMenuItem4) TextView navMenuItem4;
|
||||
|
||||
private FragmentManager fragmentManager;
|
||||
private String currentFragmentName = "";
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_main);
|
||||
ButterKnife.bind(this);
|
||||
initViews();
|
||||
}
|
||||
|
||||
@OnClick({R.id.navMenuItem1, R.id.navMenuItem2, R.id.navMenuItem3, R.id.navMenuItem4})
|
||||
public void onClick(View view){
|
||||
selectMenuItem(view);
|
||||
}
|
||||
|
||||
private void initViews(){
|
||||
initBottomNavigationView();
|
||||
showStartScreen();
|
||||
initNavigationDrawer();
|
||||
}
|
||||
|
||||
private void showStartScreen(){
|
||||
fragmentManager = getSupportFragmentManager();
|
||||
fragmentManager.beginTransaction().replace(R.id.fragmentContainer, OrderFragment.newInstance()).commit();
|
||||
currentFragmentName = OrderFragment.FRAGMENT_NAME;
|
||||
}
|
||||
|
||||
private void initBottomNavigationView(){
|
||||
|
||||
//bottomNavigationView.enableAnimation(false);
|
||||
bottomNavigationView.enableShiftingMode(false);
|
||||
bottomNavigationView.enableItemShiftingMode(false);
|
||||
bottomNavigationView.setTextVisibility(true);
|
||||
bottomNavigationView.setIconSize(24, 24);
|
||||
|
||||
bottomNavigationView.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
|
||||
@Override
|
||||
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
|
||||
switch (item.getItemId()){
|
||||
case R.id.action_order:
|
||||
if (currentFragmentName.equals(OrderFragment.FRAGMENT_NAME))
|
||||
return true;
|
||||
fragmentManager.beginTransaction().replace(R.id.fragmentContainer, OrderFragment.newInstance()).commit();
|
||||
currentFragmentName = OrderFragment.FRAGMENT_NAME;
|
||||
return true;
|
||||
|
||||
case R.id.action_cart:
|
||||
if (currentFragmentName.equals(CartFragment.FRAGMENT_NAME))
|
||||
return true;
|
||||
fragmentManager.beginTransaction().replace(R.id.fragmentContainer, CartFragment.newInstance()).commit();
|
||||
currentFragmentName = CartFragment.FRAGMENT_NAME;
|
||||
return true;
|
||||
|
||||
case R.id.action_profile:
|
||||
if (currentFragmentName.equals(ProfileFragment.FRAGMENT_NAME))
|
||||
return true;
|
||||
fragmentManager.beginTransaction().replace(R.id.fragmentContainer, ProfileFragment.newInstance()).commit();
|
||||
currentFragmentName = ProfileFragment.FRAGMENT_NAME;
|
||||
return true;
|
||||
|
||||
case R.id.action_info:
|
||||
if (currentFragmentName.equals(InfoFragment.FRAGMENT_NAME))
|
||||
return true;
|
||||
fragmentManager.beginTransaction().replace(R.id.fragmentContainer, InfoFragment.newInstance()).commit();
|
||||
currentFragmentName = InfoFragment.FRAGMENT_NAME;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void initNavigationDrawer(){
|
||||
pizzalinkToolbar.getHamburgerIcon().setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
openNavigationDrawer();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void openNavigationDrawer(){
|
||||
drawerLayout.openDrawer(GravityCompat.START);
|
||||
}
|
||||
|
||||
private void selectMenuItem(View view){
|
||||
drawerLayout.closeDrawers();
|
||||
switch (view.getId()){
|
||||
case R.id.navMenuItem1:
|
||||
Toast.makeText(this, "NavMenuItem1", Toast.LENGTH_SHORT).show();
|
||||
break;
|
||||
case R.id.navMenuItem2:
|
||||
Toast.makeText(this, "NavMenuItem2", Toast.LENGTH_SHORT).show();
|
||||
break;
|
||||
case R.id.navMenuItem3:
|
||||
Toast.makeText(this, "NavMenuItem3", Toast.LENGTH_SHORT).show();
|
||||
break;
|
||||
case R.id.navMenuItem4:
|
||||
Toast.makeText(this, "NavMenuItem4", Toast.LENGTH_SHORT).show();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public void setPizzalinkToolbarFields(boolean showHamburgerIcon, String title){
|
||||
pizzalinkToolbar.setHamburgerIconVisibility(showHamburgerIcon);
|
||||
pizzalinkToolbar.setTitle(title);
|
||||
if(showHamburgerIcon)
|
||||
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
|
||||
else
|
||||
drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user