Sistemato caricamento menu laterale (Drawer)
This commit is contained in:
parent
30e16fb765
commit
be1c5ecd0b
@ -97,13 +97,13 @@ public class MainActivity extends BaseActivity
|
||||
mBinding.appBarMain.mainSearch.setVisibility(View.GONE);
|
||||
|
||||
initGestMenu();
|
||||
if(savedInstanceState == null) openMain();
|
||||
if (savedInstanceState == null) openMain();
|
||||
|
||||
init();
|
||||
|
||||
}
|
||||
|
||||
private void startLoginActivity(){
|
||||
private void startLoginActivity() {
|
||||
this.finish();
|
||||
Intent myIntent = new Intent(this, LoginActivity.class);
|
||||
startActivity(myIntent);
|
||||
@ -170,7 +170,7 @@ public class MainActivity extends BaseActivity
|
||||
|
||||
BaseMenuConfiguration.MenuItem menuItem = getMenuItem(id);
|
||||
|
||||
if(menuItem != null) {
|
||||
if (menuItem != null) {
|
||||
fragment = menuItem.getFragmentFactory().run();
|
||||
this.adaptViewToFragment(fragment);
|
||||
} else {
|
||||
@ -205,24 +205,30 @@ public class MainActivity extends BaseActivity
|
||||
private void initGestMenu() {
|
||||
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)
|
||||
.setIcon(R.drawable.ic_black_home);
|
||||
|
||||
for(MenuConfiguration.MenuGroup menuGroup : menuGroups) {
|
||||
MenuConfiguration baseMenuConfiguration = new MenuConfiguration();
|
||||
List<MenuConfiguration.MenuGroup> menuGroups = baseMenuConfiguration.getGroups();
|
||||
|
||||
SubMenu subMenu = menu.addSubMenu(menuGroup.getGroupText());
|
||||
for (MenuConfiguration.MenuGroup menuGroup : menuGroups) {
|
||||
try {
|
||||
|
||||
for(MenuConfiguration.MenuItem menuItem : menuGroup.getItems()) {
|
||||
subMenu
|
||||
.add(menuGroup.getGroupId(), menuItem.getID(), 0, menuItem.getTitleText())
|
||||
.setIcon(menuItem.getDrawerIcon());
|
||||
if (menuService.isGroupEnabled(menuGroup)) {
|
||||
SubMenu subMenu = menu.addSubMenu(menuGroup.getGroupText());
|
||||
|
||||
for (MenuConfiguration.MenuItem menuItem : menuGroup.getItems()) {
|
||||
|
||||
if(menuService.isItemEnabled(menuItem)) {
|
||||
subMenu
|
||||
.add(menuGroup.getGroupId(), menuItem.getID(), 0, menuItem.getTitleText())
|
||||
.setIcon(menuItem.getDrawerIcon());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
} catch (Exception exception) {
|
||||
exception.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
@ -241,15 +247,15 @@ public class MainActivity extends BaseActivity
|
||||
|
||||
BaseMenuConfiguration.MenuItem menuItemToReturn = null;
|
||||
|
||||
for(MenuConfiguration.MenuGroup menuGroup : menuGroups) {
|
||||
for(MenuConfiguration.MenuItem menuItem : menuGroup.getItems()) {
|
||||
if(menuId == menuItem.getID()) {
|
||||
for (MenuConfiguration.MenuGroup menuGroup : menuGroups) {
|
||||
for (MenuConfiguration.MenuItem menuItem : menuGroup.getItems()) {
|
||||
if (menuId == menuItem.getID()) {
|
||||
menuItemToReturn = menuItem;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(menuItemToReturn != null) break;
|
||||
if (menuItemToReturn != null) break;
|
||||
}
|
||||
|
||||
|
||||
@ -269,13 +275,13 @@ public class MainActivity extends BaseActivity
|
||||
public void pop() {
|
||||
|
||||
int count = getSupportFragmentManager().getBackStackEntryCount();
|
||||
for(int i = 0; i < count; i++) {
|
||||
for (int i = 0; i < count; i++) {
|
||||
getSupportFragmentManager().popBackStack();
|
||||
}
|
||||
}
|
||||
|
||||
private void adaptViewToFragment(Fragment fragment){
|
||||
if(fragment instanceof ISearcableFragment) {
|
||||
private void adaptViewToFragment(Fragment fragment) {
|
||||
if (fragment instanceof ISearcableFragment) {
|
||||
mBinding.appBarMain.mainSearch.setOnQueryTextListener((SearchView.OnQueryTextListener) fragment);
|
||||
mBinding.appBarMain.mainSearch.setVisibility(View.VISIBLE);
|
||||
mBinding.appBarMain.mainSearch.setOnSearchClickListener(v -> {
|
||||
@ -301,7 +307,7 @@ public class MainActivity extends BaseActivity
|
||||
}
|
||||
|
||||
|
||||
if(fragment instanceof ITitledFragment && !(fragment instanceof MainFragment)) {
|
||||
if (fragment instanceof ITitledFragment && !(fragment instanceof MainFragment)) {
|
||||
mBinding.appBarMain.toolbarTitleCenteredLayout.setVisibility(View.GONE);
|
||||
mBinding.appBarMain.toolbarTitleLeft.setVisibility(View.VISIBLE);
|
||||
((ITitledFragment) fragment).onCreateActionBar(mBinding.appBarMain.toolbarTitleLeft, this);
|
||||
@ -314,19 +320,19 @@ public class MainActivity extends BaseActivity
|
||||
mBinding.appBarMain.toolbarTitleLeft.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
if(fragment instanceof IScrollableFragment) {
|
||||
if (fragment instanceof IScrollableFragment) {
|
||||
((IScrollableFragment) fragment).setScrollToolbar(mBinding.appBarMain.elevatedToolbar);
|
||||
((IScrollableFragment) fragment).addOnPreDestroy(() -> {
|
||||
mBinding.appBarMain.elevatedToolbar.resetAll();
|
||||
});
|
||||
}
|
||||
|
||||
if(fragment instanceof ISelectAllFragment && ((ISelectAllFragment)fragment).isSelectAllButtonEnabled()) {
|
||||
if (fragment instanceof ISelectAllFragment && ((ISelectAllFragment) fragment).isSelectAllButtonEnabled()) {
|
||||
mBinding.appBarMain.mainSelectAll.setVisibility(View.VISIBLE);
|
||||
mBinding.appBarMain.mainSelectAll.setOnClickListener(new OnSingleClickListener() {
|
||||
@Override
|
||||
public void onSingleClick(View v) {
|
||||
((ISelectAllFragment)fragment).onSelectAll();
|
||||
((ISelectAllFragment) fragment).onSelectAll();
|
||||
}
|
||||
});
|
||||
((ISelectAllFragment) fragment).addOnPreDestroy(() -> {
|
||||
@ -335,16 +341,16 @@ public class MainActivity extends BaseActivity
|
||||
});
|
||||
}
|
||||
|
||||
if(fragment instanceof IFilterableFragment) {
|
||||
if (fragment instanceof IFilterableFragment) {
|
||||
mBinding.appBarMain.mainFilter.setVisibility(View.VISIBLE);
|
||||
mBinding.appBarMain.mainFilter.setOnClickListener(new OnSingleClickListener() {
|
||||
@Override
|
||||
public void onSingleClick(View v) {
|
||||
((IFilterableFragment)fragment).onFilterClick();
|
||||
((IFilterableFragment) fragment).onFilterClick();
|
||||
}
|
||||
});
|
||||
|
||||
((IFilterableFragment)fragment).addOnPreDestroy(() -> {
|
||||
((IFilterableFragment) fragment).addOnPreDestroy(() -> {
|
||||
mBinding.appBarMain.mainFilter.setVisibility(View.GONE);
|
||||
mBinding.appBarMain.mainFilter.setOnClickListener(null);
|
||||
});
|
||||
@ -354,14 +360,14 @@ public class MainActivity extends BaseActivity
|
||||
}
|
||||
}
|
||||
|
||||
private void changeContentFragment(Fragment fragment, boolean addToBackStack){
|
||||
private void changeContentFragment(Fragment fragment, boolean addToBackStack) {
|
||||
if (fragment != null) {
|
||||
FragmentManager fragmentManager = getSupportFragmentManager();
|
||||
FragmentTransaction ft = fragmentManager
|
||||
.beginTransaction()
|
||||
.replace(R.id.frame_container, fragment);
|
||||
|
||||
if(addToBackStack) ft.addToBackStack(fragment.getTag());
|
||||
if (addToBackStack) ft.addToBackStack(fragment.getTag());
|
||||
|
||||
ft.commit();
|
||||
//fragmentManager.executePendingTransactions();
|
||||
@ -370,11 +376,7 @@ public class MainActivity extends BaseActivity
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private void init(){
|
||||
private void init() {
|
||||
|
||||
// ServerStatusChecker.getInstance().addCallback(value -> {
|
||||
// if(value && (!mIsOnline || firstCheckExecution)){
|
||||
|
||||
@ -24,11 +24,9 @@ import javax.inject.Inject;
|
||||
|
||||
import it.integry.integrywmsnative.MainApplication;
|
||||
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.configs.BaseMenuConfiguration;
|
||||
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.data_recover.ColliDataRecoverDTO;
|
||||
import it.integry.integrywmsnative.core.data_recover.ColliDataRecoverService;
|
||||
@ -113,7 +111,6 @@ public class MainFragment extends Fragment implements ITitledFragment, IScrollab
|
||||
|
||||
init();
|
||||
initGestMenu();
|
||||
// initGestMenuOLD();
|
||||
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) {
|
||||
((MainActivity) getActivity()).setMenuItem(menuItem.getID());
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user