Sistemato caricamento menu laterale (Drawer)

This commit is contained in:
Giuseppe Scorrano 2021-09-30 13:35:09 +02:00
parent 30e16fb765
commit be1c5ecd0b
2 changed files with 39 additions and 74 deletions

View File

@ -205,25 +205,31 @@ public class MainActivity extends BaseActivity
private void initGestMenu() { private void initGestMenu() {
Menu menu = mBinding.navView.getMenu(); Menu menu = mBinding.navView.getMenu();
ICustomConfiguration customConfiguration = ClassRouter.getInstance(ClassRouter.PATH.CUSTOM_CONFIGURATION);
if(customConfiguration == null) return;
BaseMenuConfiguration menuConfiguration = customConfiguration.getConfig(BaseCustomConfiguration.Keys.MENU_CONFIGURATION);
List<MenuConfiguration.MenuGroup> menuGroups = menuConfiguration.getGroups();
menu.add(R.id.nav_home, R.id.nav_home, 0, R.string.home) menu.add(R.id.nav_home, R.id.nav_home, 0, R.string.home)
.setIcon(R.drawable.ic_black_home); .setIcon(R.drawable.ic_black_home);
for(MenuConfiguration.MenuGroup menuGroup : menuGroups) { MenuConfiguration baseMenuConfiguration = new MenuConfiguration();
List<MenuConfiguration.MenuGroup> menuGroups = baseMenuConfiguration.getGroups();
for (MenuConfiguration.MenuGroup menuGroup : menuGroups) {
try {
if (menuService.isGroupEnabled(menuGroup)) {
SubMenu subMenu = menu.addSubMenu(menuGroup.getGroupText()); SubMenu subMenu = menu.addSubMenu(menuGroup.getGroupText());
for (MenuConfiguration.MenuItem menuItem : menuGroup.getItems()) { for (MenuConfiguration.MenuItem menuItem : menuGroup.getItems()) {
if(menuService.isItemEnabled(menuItem)) {
subMenu subMenu
.add(menuGroup.getGroupId(), menuItem.getID(), 0, menuItem.getTitleText()) .add(menuGroup.getGroupId(), menuItem.getID(), 0, menuItem.getTitleText())
.setIcon(menuItem.getDrawerIcon()); .setIcon(menuItem.getDrawerIcon());
} }
}
}
} catch (Exception exception) {
exception.printStackTrace();
}
} }
@ -370,10 +376,6 @@ public class MainActivity extends BaseActivity
} }
private void init() { private void init() {
// ServerStatusChecker.getInstance().addCallback(value -> { // ServerStatusChecker.getInstance().addCallback(value -> {

View File

@ -24,11 +24,9 @@ import javax.inject.Inject;
import it.integry.integrywmsnative.MainApplication; import it.integry.integrywmsnative.MainApplication;
import it.integry.integrywmsnative.R; import it.integry.integrywmsnative.R;
import it.integry.integrywmsnative.core.class_router.BaseCustomConfiguration;
import it.integry.integrywmsnative.core.class_router.ClassRouter; import it.integry.integrywmsnative.core.class_router.ClassRouter;
import it.integry.integrywmsnative.core.class_router.configs.BaseMenuConfiguration; import it.integry.integrywmsnative.core.class_router.configs.BaseMenuConfiguration;
import it.integry.integrywmsnative.core.class_router.configs.MenuConfiguration; import it.integry.integrywmsnative.core.class_router.configs.MenuConfiguration;
import it.integry.integrywmsnative.core.class_router.interfaces.ICustomConfiguration;
import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita; import it.integry.integrywmsnative.core.class_router.interfaces.IOrdiniVendita;
import it.integry.integrywmsnative.core.data_recover.ColliDataRecoverDTO; import it.integry.integrywmsnative.core.data_recover.ColliDataRecoverDTO;
import it.integry.integrywmsnative.core.data_recover.ColliDataRecoverService; import it.integry.integrywmsnative.core.data_recover.ColliDataRecoverService;
@ -113,7 +111,6 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
init(); init();
initGestMenu(); initGestMenu();
// initGestMenuOLD();
initVersion(); initVersion();
} }
@ -296,40 +293,6 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
} }
private void initGestMenuOLD() {
ICustomConfiguration customConfiguration = ClassRouter.getInstance(ClassRouter.PATH.CUSTOM_CONFIGURATION);
if (customConfiguration == null) {
// MainApplication.exit();
}
BaseMenuConfiguration menuConfiguration = customConfiguration.getConfig(BaseCustomConfiguration.Keys.MENU_CONFIGURATION);
List<MenuConfiguration.MenuGroup> menuGroups = menuConfiguration.getGroups();
int menuSpanCount = 2;
if(UtilityDimension.getDisplayInchs(this.getActivity()) > 8) menuSpanCount = 4;
else if(UtilityDimension.getDisplayInchs(this.getActivity()) > 6.5) menuSpanCount = 3;
for (MenuConfiguration.MenuGroup menuGroup : menuGroups) {
FragmentMainMenuGroupLayoutBinding groupBinding = DataBindingUtil.inflate(mLayoutInflater, R.layout.fragment_main_menu_group_layout, null, false);
String title = this.getResources().getString(menuGroup.getGroupText());
groupBinding.generalDashboardGroupTitle.setText(title);
MenuListAdapter menuListAdapter = new MenuListAdapter(getContext(), menuGroup.getItems());
groupBinding.mainList.setLayoutManager(new GridLayoutManager(getContext(), menuSpanCount));
groupBinding.mainList.setAdapter(menuListAdapter);
groupBinding.mainList.setNestedScrollingEnabled(false);
menuListAdapter.setClickListener((view, position) -> {
onMenuClick(menuGroup.getItems().get(position));
});
mBindings.menuContainer.addView(groupBinding.getRoot());
}
}
private void onMenuClick(MenuConfiguration.MenuItem menuItem) { private void onMenuClick(MenuConfiguration.MenuItem menuItem) {
((MainActivity) getActivity()).setMenuItem(menuItem.getID()); ((MainActivity) getActivity()).setMenuItem(menuItem.getID());
} }