android.view.SubMenu#size ( )源码实例Demo

下面列出了android.view.SubMenu#size ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: guarda-android-wallets   文件: MainActivity.java
private void changeMenuFontFamily() {
    Menu m = mNavigationView.getMenu();
    for (int i = 0; i < m.size(); i++) {
        MenuItem mi = m.getItem(i);

        SubMenu subMenu = mi.getSubMenu();
        if (subMenu != null && subMenu.size() > 0) {
            for (int j = 0; j < subMenu.size(); j++) {
                MenuItem subMenuItem = subMenu.getItem(j);
                applyFontToMenuItem(subMenuItem);
            }
        }

        applyFontToMenuItem(mi);
    }
}
 
源代码2 项目: Loop   文件: MainActivity.java
private void formatMenuItems() {
    Menu menu = navigationView.getMenu();
    for (int i = 0; i < menu.size(); i++) {
        MenuItem mi = menu.getItem(i);

        SubMenu subMenu = mi.getSubMenu();
        if (subMenu != null && subMenu.size() > 0) {
            for (int j = 0; j < subMenu.size(); j++) {
                MenuItem subMenuItem = subMenu.getItem(j);
                applyFontToMenuItem(subMenuItem);
            }
        }

        applyFontToMenuItem(mi);
    }
}
 
源代码3 项目: 4pdaClient-plus   文件: MainDrawerMenu.java
public void setItemCheckable(String name) {
    SubMenu subMenu;
    MenuItem item;
    for (int i = 0; i < menu.size(); i++) {
        subMenu = menu.getItem(i).getSubMenu();
        for (int j = 0; j < subMenu.size(); j++) {
            item = subMenu.getItem(j);
            if (item.getTitle().equals(name)) {
                menu.getItem(prevSelectedGroup).getSubMenu().getItem(prevSelectedItem).setCheckable(false).setChecked(false);
                item.setCheckable(true).setChecked(true);
                prevSelectedGroup = i;
                prevSelectedItem = j;
                prefs.edit().putString("navItemTitle", name).apply();
                return;
            }
        }
    }
}
 
源代码4 项目: kolabnotes-android   文件: DrawerService.java
public void deleteNotebook(String notebookName){
    final SubMenu notebookSubmenu = view.getMenu().findItem(R.id.navigation_notebooks).getSubMenu();

    for(int i=0; i<notebookSubmenu.size(); i++){
        final int currentId = notebookSubmenu.getItem(i).getItemId();
        final String actualTitle = notebookSubmenu.getItem(i).getTitle().toString();
        if(actualTitle.equals(notebookName)){
            notebookSubmenu.removeItem(currentId);
        }
    }
}
 
源代码5 项目: Cook-It-Android-XML-Template   文件: Main.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    setupToolbar(R.id.toolbar, "COOK IT", R.color.colorPink, R.color.colorWhiteTrans, R.drawable.ic_burger);

    FragmentTransaction ft;
    FragmentHome fragmentHome = new FragmentHome();
    ft = getSupportFragmentManager().beginTransaction();
    ft.replace(R.id.frameLayout, fragmentHome).commit();

    drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
            this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
    drawer.setDrawerListener(toggle);
    toggle.syncState();

    NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
    navigationView.setNavigationItemSelectedListener(this);

    Menu m = navigationView.getMenu();
    for (int i=0;i<m.size();i++) {
        MenuItem mi = m.getItem(i);
        SubMenu subMenu = mi.getSubMenu();
        if (subMenu!=null && subMenu.size() >0 ) {
            for (int j=0; j <subMenu.size();j++) {
                MenuItem subMenuItem = subMenu.getItem(j);
                applyFontToMenuItem(subMenuItem);
            }
        }
        applyFontToMenuItem(mi);
    }

    View header = navigationView.getHeaderView(0);
    ImageView imageView = (ImageView) header.findViewById(R.id.imageView);
    Glide.with(this)
            .load(Uri.parse("https://s3.amazonaws.com/uifaces/faces/twitter/jsa/128.jpg"))
            .transform(new CircleGlide(this))
            .into(imageView);
}
 
private List<BottomSheetItem> createAdapterItems(int dividerBackground, int titleTextColor,
                                                 int itemTextColor, int itemBackground,
                                                 int tintColor) {
    List<BottomSheetItem> items = new ArrayList<>();
    mTitles = 0;

    boolean addedSubMenu = false;

    for (int i = 0; i < mMenu.size(); i++) {
        MenuItem item = mMenu.getItem(i);

        if (item.isVisible()) {
            if (item.hasSubMenu()) {
                SubMenu subMenu = item.getSubMenu();

                if (i != 0 && addedSubMenu) {
                    if (mMode == BottomSheetBuilder.MODE_GRID) {
                        throw new IllegalArgumentException("MODE_GRID can't have submenus." +
                                " Use MODE_LIST instead");
                    }
                    items.add(new BottomSheetDivider(dividerBackground));
                }

                CharSequence title = item.getTitle();
                if (title != null && !title.equals("")) {
                    items.add(new BottomSheetHeader(title.toString(), titleTextColor));
                    mTitles++;
                }

                for (int j = 0; j < subMenu.size(); j++) {
                    MenuItem subItem = subMenu.getItem(j);
                    if (subItem.isVisible()) {
                        items.add(new BottomSheetMenuItem(subItem, itemTextColor,
                                itemBackground, tintColor));
                        addedSubMenu = true;
                    }
                }
            } else {
                items.add(new BottomSheetMenuItem(item, itemTextColor, itemBackground, tintColor));
            }
        }
    }

    return items;
}
 
/**
 * Flattens the visible menu items of {@link #menu} into {@link #items}, while inserting
 * separators between items when necessary.
 */
private void prepareMenuItems() {
  if (updateSuspended) {
    return;
  }
  updateSuspended = true;
  items.clear();
  items.add(new NavigationMenuHeaderItem());

  int currentGroupId = -1;
  int currentGroupStart = 0;
  boolean currentGroupHasIcon = false;
  for (int i = 0, totalSize = menu.getVisibleItems().size(); i < totalSize; i++) {
    MenuItemImpl item = menu.getVisibleItems().get(i);
    if (item.isChecked()) {
      setCheckedItem(item);
    }
    if (item.isCheckable()) {
      item.setExclusiveCheckable(false);
    }
    if (item.hasSubMenu()) {
      SubMenu subMenu = item.getSubMenu();
      if (subMenu.hasVisibleItems()) {
        if (i != 0) {
          items.add(new NavigationMenuSeparatorItem(paddingSeparator, 0));
        }
        items.add(new NavigationMenuTextItem(item));
        boolean subMenuHasIcon = false;
        int subMenuStart = items.size();
        for (int j = 0, size = subMenu.size(); j < size; j++) {
          MenuItemImpl subMenuItem = (MenuItemImpl) subMenu.getItem(j);
          if (subMenuItem.isVisible()) {
            if (!subMenuHasIcon && subMenuItem.getIcon() != null) {
              subMenuHasIcon = true;
            }
            if (subMenuItem.isCheckable()) {
              subMenuItem.setExclusiveCheckable(false);
            }
            if (item.isChecked()) {
              setCheckedItem(item);
            }
            items.add(new NavigationMenuTextItem(subMenuItem));
          }
        }
        if (subMenuHasIcon) {
          appendTransparentIconIfMissing(subMenuStart, items.size());
        }
      }
    } else {
      int groupId = item.getGroupId();
      if (groupId != currentGroupId) { // first item in group
        currentGroupStart = items.size();
        currentGroupHasIcon = item.getIcon() != null;
        if (i != 0) {
          currentGroupStart++;
          items.add(new NavigationMenuSeparatorItem(paddingSeparator, paddingSeparator));
        }
      } else if (!currentGroupHasIcon && item.getIcon() != null) {
        currentGroupHasIcon = true;
        appendTransparentIconIfMissing(currentGroupStart, items.size());
      }
      NavigationMenuTextItem textItem = new NavigationMenuTextItem(item);
      textItem.needsEmptyIcon = currentGroupHasIcon;
      items.add(textItem);
      currentGroupId = groupId;
    }
  }
  updateSuspended = false;
}
 
private List<BottomSheetItem> createAdapterItems(int dividerBackground, int titleTextColor,
                                                 int itemTextColor, int itemBackground,
                                                 int tintColor) {
    List<BottomSheetItem> items = new ArrayList<>();
    mTitles = 0;

    boolean addedSubMenu = false;

    for (int i = 0; i < mMenu.size(); i++) {
        MenuItem item = mMenu.getItem(i);

        if (item.isVisible()) {
            if (item.hasSubMenu()) {
                SubMenu subMenu = item.getSubMenu();

                if (i != 0 && addedSubMenu) {
                    if (mMode == BottomSheetBuilder.MODE_GRID) {
                        throw new IllegalArgumentException("MODE_GRID can't have submenus." +
                                " Use MODE_LIST instead");
                    }
                    items.add(new BottomSheetDivider(dividerBackground));
                }

                CharSequence title = item.getTitle();
                if (title != null && !title.equals("")) {
                    items.add(new BottomSheetHeader(title.toString(), titleTextColor));
                    mTitles++;
                }

                for (int j = 0; j < subMenu.size(); j++) {
                    MenuItem subItem = subMenu.getItem(j);
                    if (subItem.isVisible()) {
                        items.add(new BottomSheetMenuItem(subItem, itemTextColor,
                                itemBackground, tintColor));
                        addedSubMenu = true;
                    }
                }
            } else {
                items.add(new BottomSheetMenuItem(item, itemTextColor, itemBackground, tintColor));
            }
        }
    }

    return items;
}
 
源代码9 项目: ThreePhasesBottomSheet   文件: MenuSheetView.java
/**
 * Flattens the visible menu items of {@link #menu} into {@link #items},
 * while inserting separators between items when necessary.
 *
 * Adapted from the Design support library's NavigationMenuPresenter implementation
 */
private void prepareMenuItems() {
    items.clear();
    int currentGroupId = 0;

    // Iterate over the menu items
    for (int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.getItem(i);
        if (item.isVisible()) {
            if (item.hasSubMenu()) {
                // Flatten the submenu
                SubMenu subMenu = item.getSubMenu();
                if (subMenu.hasVisibleItems()) {
                    if (menuType == LIST) {
                        items.add(SheetMenuItem.SEPARATOR);

                        // Add a header item if it has text
                        if (!TextUtils.isEmpty(item.getTitle())) {
                            items.add(SheetMenuItem.of(item));
                        }
                    }

                    // Add the sub-items
                    for (int subI = 0, size = subMenu.size(); subI < size; subI++) {
                        MenuItem subMenuItem = subMenu.getItem(subI);
                        if (subMenuItem.isVisible()) {
                            items.add(SheetMenuItem.of(subMenuItem));
                        }
                    }

                    // Add one more separator to the end to close it off if we have more items
                    if (menuType == LIST && i != menu.size() - 1) {
                        items.add(SheetMenuItem.SEPARATOR);
                    }
                }
            } else {
                int groupId = item.getGroupId();
                if (groupId != currentGroupId && menuType == LIST) {
                    items.add(SheetMenuItem.SEPARATOR);
                }
                items.add(SheetMenuItem.of(item));
                currentGroupId = groupId;
            }
        }
    }
}
 
源代码10 项目: bottomsheet   文件: MenuSheetView.java
/**
 * Flattens the visible menu items of {@link #menu} into {@link #items},
 * while inserting separators between items when necessary.
 *
 * Adapted from the Design support library's NavigationMenuPresenter implementation
 */
private void prepareMenuItems() {
    items.clear();
    int currentGroupId = 0;

    // Iterate over the menu items
    for (int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.getItem(i);
        if (item.isVisible()) {
            if (item.hasSubMenu()) {
                // Flatten the submenu
                SubMenu subMenu = item.getSubMenu();
                if (subMenu.hasVisibleItems()) {
                    if (menuType == LIST) {
                        items.add(SheetMenuItem.SEPARATOR);

                        // Add a header item if it has text
                        if (!TextUtils.isEmpty(item.getTitle())) {
                            items.add(SheetMenuItem.of(item));
                        }
                    }

                    // Add the sub-items
                    for (int subI = 0, size = subMenu.size(); subI < size; subI++) {
                        MenuItem subMenuItem = subMenu.getItem(subI);
                        if (subMenuItem.isVisible()) {
                            items.add(SheetMenuItem.of(subMenuItem));
                        }
                    }

                    // Add one more separator to the end to close it off if we have more items
                    if (menuType == LIST && i != menu.size() - 1) {
                        items.add(SheetMenuItem.SEPARATOR);
                    }
                }
            } else {
                int groupId = item.getGroupId();
                if (groupId != currentGroupId && menuType == LIST) {
                    items.add(SheetMenuItem.SEPARATOR);
                }
                items.add(SheetMenuItem.of(item));
                currentGroupId = groupId;
            }
        }
    }
}