/** * Inflates a menu resource into the menu backing this sheet. * * @param menuRes Menu resource ID */ public void inflateMenu(@MenuRes int menuRes) { if (menuRes != -1) { SupportMenuInflater inflater = new SupportMenuInflater(getContext()); inflater.inflate(menuRes, menu); } prepareMenuItems(); }
/** * Set a menu from it's resource id. * * @param menuRes menu resource to be set */ public void setMenu(@MenuRes int menuRes) { mMenu = new MenuBuilder(getContext()); new SupportMenuInflater(getContext()).inflate(menuRes, mMenu); setMenu(mMenu); }
/** * Place the menu items with icons inside a horizontal LinearLayout */ private void addMenuItems() { if (mMenu == null) { mMenu = new MenuBuilder(getContext()); new SupportMenuInflater(getContext()).inflate(mMenuRes, mMenu); } LinearLayoutCompat.LayoutParams layoutParams = new LinearLayoutCompat.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT, 1); setWeightSum(mMenu.size()); for (int i = 0; i < mMenu.size(); i++) { MenuItem item = mMenu.getItem(i); if (item.isVisible()) { AppCompatImageButton imageButton = new AppCompatImageButton(getContext()); //noinspection ResourceType imageButton.setId(item.getItemId() == Menu.NONE ? genViewId() : item.getItemId()); imageButton.setBackgroundResource(mItemBackground); imageButton.setImageDrawable(item.getIcon()); imageButton.setOnClickListener(this); imageButton.setOnLongClickListener(this); imageButton.setTag(item); mMenuLayout.addView(imageButton, layoutParams); } } }
private void newNavigationMenu() { navigationMenu = new NavigationMenu(getContext()); new SupportMenuInflater(getContext()).inflate(menuId, navigationMenu); navigationMenu.setCallback(new MenuBuilder.Callback() { @Override public boolean onMenuItemSelected(MenuBuilder menu, MenuItem item) { return menuListener != null && menuListener.onMenuItemSelected(item); } @Override public void onMenuModeChange(MenuBuilder menu) { } }); }
private void newNavigationMenu() { navigationMenu = new NavigationMenu(getContext()); new SupportMenuInflater(getContext()).inflate(menuId, navigationMenu); navigationMenu.setCallback(new MenuBuilder.Callback() { @Override public boolean onMenuItemSelected(MenuBuilder menu, MenuItem item) { return menuListener != null && menuListener.onMenuItemSelected(item); } @Override public void onMenuModeChange(MenuBuilder menu) { } }); }
private void newNavigationMenu() { navigationMenu = new NavigationMenu(getContext()); new SupportMenuInflater(getContext()).inflate(menuId, navigationMenu); navigationMenu.setCallback(new MenuBuilder.Callback() { @Override public boolean onMenuItemSelected(MenuBuilder menu, MenuItem item) { return menuListener != null && menuListener.onMenuItemSelected(item); } @Override public void onMenuModeChange(MenuBuilder menu) { } }); }