diff --git a/app/src/main/java/bottomnav/hitherejoe/com/bottomnavigationsample/MainActivity.java b/app/src/main/java/bottomnav/hitherejoe/com/bottomnavigationsample/MainActivity.java index 998cb46..8940503 100644 --- a/app/src/main/java/bottomnav/hitherejoe/com/bottomnavigationsample/MainActivity.java +++ b/app/src/main/java/bottomnav/hitherejoe/com/bottomnavigationsample/MainActivity.java @@ -13,6 +13,8 @@ public class MainActivity extends AppCompatActivity { private TextView textFavorites; private TextView textSchedules; private TextView textMusic; + private int selected_menu=1; + private static String KEY_SELECTED_MENU="KEY_SELECTED_MENU"; @Override protected void onCreate(Bundle savedInstanceState) { @@ -26,29 +28,47 @@ protected void onCreate(Bundle savedInstanceState) { BottomNavigationView bottomNavigationView = (BottomNavigationView) findViewById(R.id.bottom_navigation); + if (savedInstanceState != null) { + int selected_menu_id= savedInstanceState.getInt(KEY_SELECTED_MENU); + handleMenu(selected_menu_id); + } + bottomNavigationView.setOnNavigationItemSelectedListener( new BottomNavigationView.OnNavigationItemSelectedListener() { @Override public boolean onNavigationItemSelected(@NonNull MenuItem item) { - switch (item.getItemId()) { - case R.id.action_favorites: - textFavorites.setVisibility(View.VISIBLE); - textSchedules.setVisibility(View.GONE); - textMusic.setVisibility(View.GONE); - break; - case R.id.action_schedules: - textFavorites.setVisibility(View.GONE); - textSchedules.setVisibility(View.VISIBLE); - textMusic.setVisibility(View.GONE); - break; - case R.id.action_music: - textFavorites.setVisibility(View.GONE); - textSchedules.setVisibility(View.GONE); - textMusic.setVisibility(View.VISIBLE); - break; - } - return false; + return handleMenu(item.getItemId()); } }); } + + private boolean handleMenu(int sel_item) { + switch (sel_item) { + case R.id.action_favorites: + selected_menu=R.id.action_favorites; + textFavorites.setVisibility(View.VISIBLE); + textSchedules.setVisibility(View.GONE); + textMusic.setVisibility(View.GONE); + break; + case R.id.action_schedules: + selected_menu=R.id.action_schedules; + textFavorites.setVisibility(View.GONE); + textSchedules.setVisibility(View.VISIBLE); + textMusic.setVisibility(View.GONE); + break; + case R.id.action_music: + selected_menu=R.id.action_music; + textFavorites.setVisibility(View.GONE); + textSchedules.setVisibility(View.GONE); + textMusic.setVisibility(View.VISIBLE); + break; + } + return false; + } + + @Override + protected void onSaveInstanceState (Bundle outState) { + super.onSaveInstanceState(outState); + outState.putInt(KEY_SELECTED_MENU, selected_menu); + } }