package de.dhbwloe.campusapp;
import android.os.Bundle;
+import android.support.design.widget.NavigationView;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentTransaction;
// Container ID
private int iFragmentContainerId;
+ private int iNavigationViewId;
// Alle registrierte Fragmente mit Name
private ArrayList<NavPage> lNavigationPages = new ArrayList<NavPage>();
- public NavigationManager(CampusAppContext context, int fragmentContainer) {
+ public NavigationManager(CampusAppContext context, int fragmentContainer, int navigationView) {
AppContext = context;
iFragmentContainerId = fragmentContainer;
+ iNavigationViewId = navigationView;
oCurrentPage = null;
}
oCurrentPage = page;
oCurrentFragment = fragment;
+ updateNavigationHighlight();
+
transaction.commit();
}
return closeDialog();
}
+ private void updateNavigationHighlight() {
+ NavigationView navigationView = (NavigationView) AppContext.getMainActivity().findViewById(iNavigationViewId);
+
+ if(oCurrentPage == null)
+ return;
+
+ int activeItemId = 0;
+ for(CampusAppContext.NavigationItem navitem : AppContext.NAVIGATION_TARGETS) {
+ if(oCurrentPage.name.equalsIgnoreCase(navitem.navTarget)) {
+ activeItemId = navitem.navItemId;
+ }
+ }
+ if(activeItemId == 0)
+ return;
+
+ navigationView.setCheckedItem(activeItemId);
+ }
+
}