android.view.SubMenu

Here are the examples of the java api android.view.SubMenu taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

84 Examples 7

19 Source : MainActivity.java
with Apache License 2.0
from lzls

private void showDrawerSettingsMenu(View anchor) {
    PopupMenu ppm = new PopupMenu(this, anchor);
    Menu menu = ppm.getMenu();
    menu.add(Menu.NONE, R.id.setBackground, Menu.NONE, R.string.setBackground);
    SubMenu subMenu = menu.addSubMenu(Menu.NONE, R.id.setForeground, Menu.NONE, R.string.setForeground);
    subMenu.add(R.id.setForeground, R.id.changeTextColor, Menu.NONE, mIsDrawerListForegroundLight ? R.string.setDarkTexts : R.string.setLightTexts);
    if (Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT) {
        subMenu.add(R.id.setForeground, R.id.changeStatusTextColor, Menu.NONE, mIsDrawerStatusLight ? R.string.setLightStatus : R.string.setDarkStatus);
    }
    ppm.setGravity(Gravity.END);
    ppm.show();
    ppm.setOnMenuItemClickListener(item -> {
        switch(item.gereplacedemId()) {
            case R.id.setBackground:
                Intent it = new Intent(Intent.ACTION_GET_CONTENT).setType("image/*");
                startActivityForResult(it, REQUEST_CODE_CHOSE_DRAWER_BACKGROUND_PICTURE);
                return true;
            case R.id.changeTextColor:
                mDrawerListAdapter.setLightDrawerListForeground(!mIsDrawerListForegroundLight);
                return true;
            case R.id.changeStatusTextColor:
                setLightDrawerStatus(!mIsDrawerStatusLight);
                return true;
            default:
                return false;
        }
    });
}

19 Source : ActionProvider.java
with Apache License 2.0
from JackChan1999

public void onPrepareSubMenu(SubMenu subMenu) {
}

19 Source : ActionProvider.java
with Apache License 2.0
from androidx

/**
 * Called to prepare an replacedociated submenu for the menu item backed by this ActionProvider.
 *
 * <p>if {@link #hreplacedubMenu()} returns true, this method will be called when the menu item is
 * selected to prepare the submenu for presentation to the user. Apps may use this to create or
 * alter submenu content right before display.
 *
 * @param subMenu Submenu that will be displayed
 */
public void onPrepareSubMenu(SubMenu subMenu) {
}

18 Source : RouteParamFragment.java
with Apache License 2.0
from whataa

private void initToolbar() {
    getToolbar().getMenu().add(0, 0, RouteParamItem.Type.STRING, "add String extra");
    getToolbar().getMenu().add(0, 0, RouteParamItem.Type.BOOLEAN, "add boolean extra");
    getToolbar().getMenu().add(0, 0, RouteParamItem.Type.INT, "add int extra");
    getToolbar().getMenu().add(0, 0, RouteParamItem.Type.LONG, "add long extra");
    getToolbar().getMenu().add(0, 0, RouteParamItem.Type.FLOAT, "add float extra");
    getToolbar().getMenu().add(0, 0, RouteParamItem.Type.DOUBLE, "add double extra");
    SubMenu subMenu = getToolbar().getMenu().addSubMenu(0, 0, 7, "add flag");
    subMenu.add(R.id.pd_menu_id_1, 0, 0, "FLAG_ACTIVITY_NEW_TASK");
    subMenu.add(R.id.pd_menu_id_1, 0, 1, "FLAG_ACTIVITY_SINGLE_TOP");
    subMenu.add(R.id.pd_menu_id_1, 0, 2, "FLAG_ACTIVITY_CLEAR_TASK");
    subMenu.add(R.id.pd_menu_id_1, 0, 3, "FLAG_ACTIVITY_CLEAR_TOP");
    getToolbar().setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {

        @Override
        public boolean onMenuItemClick(MenuItem item) {
            if (item.hreplacedubMenu()) {
                return true;
            } else {
                if (item.getGroupId() == R.id.pd_menu_id_1) {
                    RouteParamItem paramItem = new RouteParamItem(RouteParamItem.Type.NONE);
                    switch(item.getOrder()) {
                        case 0:
                            paramItem.setFlagType(Intent.FLAG_ACTIVITY_NEW_TASK, item.getreplacedle().toString());
                            break;
                        case 1:
                            paramItem.setFlagType(Intent.FLAG_ACTIVITY_SINGLE_TOP, item.getreplacedle().toString());
                            break;
                        case 2:
                            paramItem.setFlagType(Intent.FLAG_ACTIVITY_CLEAR_TASK, item.getreplacedle().toString());
                            break;
                        case 3:
                            paramItem.setFlagType(Intent.FLAG_ACTIVITY_CLEAR_TOP, item.getreplacedle().toString());
                            break;
                    }
                    getAdapter().inserreplacedem(paramItem);
                } else {
                    getAdapter().inserreplacedem(new RouteParamItem(item.getOrder()));
                }
                return true;
            }
        }
    });
}

18 Source : ConfigUtils.java
with GNU Affero General Public License v3.0
from threema-ch

public static void themeMenu(Menu menu, @ColorInt int color) {
    for (int i = 0, size = menu.size(); i < size; i++) {
        final MenuItem menuItem = menu.gereplacedem(i);
        themeMenuItem(menuItem, color);
        if (menuItem.hreplacedubMenu()) {
            final SubMenu subMenu = menuItem.getSubMenu();
            for (int j = 0; j < subMenu.size(); j++) {
                themeMenuItem(subMenu.gereplacedem(j), color);
            }
        }
    }
}

18 Source : MainActivity.java
with MIT License
from HBU

// ////////////////////////////////////////////////////////
// 选项菜单
// ////////////////////////////////////////////////////////
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // 四个参数的含义:
    // 1.group的id;2.item的id;3.是否排序;4.将要显示的内容
    menu.add(0, 1, 0, "计算机科学与技术");
    menu.add(0, 2, 0, "网络工程");
    menu.add(0, 3, 0, "信息安全");
    menu.add(0, 4, 0, "河北大学艺术学院");
    menu.add(0, 5, 0, "河北大学质检学院");
    SubMenu sub = menu.addSubMenu("子菜单");
    sub.add(0, 5, 0, "子菜单一");
    sub.add(0, 6, 0, "子菜单二");
    sub.add(0, 7, 0, "子菜单三");
    menu.add(1, 6, 0, "河北大学计算机学院");
    menu.add(1, 7, 1, "河北大学电信学院");
    menu.add(1, 8, 5, "河北大学新闻学院");
    menu.add(1, 9, 2, "河北大学艺术学院");
    menu.add(1, 10, 3, "河北大学质检学院");
    return true;
}

18 Source : HomeScreenFragment.java
with Apache License 2.0
from google

private void updateSelectedProjectUI(int selectedIndex) {
    SubMenu subMenu = getProjectsNavItem().getSubMenu();
    for (int i = 0; i < projects.size(); i++) {
        MenuItem menuItem = subMenu.gereplacedem(i);
        menuItem.setChecked(i == selectedIndex);
    }
}

18 Source : SongsFragment.java
with GNU General Public License v3.0
from deepshooter

private void setUpSortOrderMenu(@NonNull SubMenu sortOrder) {
    sortOrder.removeItem(R.id.action_sort_order_album_desc);
    sortOrder.removeItem(R.id.action_sort_order_artist_desc);
    switch(getSavedSortOrder()) {
        case SongSortOrder.SONG_ALBUM:
            sortOrder.findItem(R.id.action_sort_order_album).setChecked(true);
            break;
        case SongSortOrder.SONG_A_Z:
            sortOrder.findItem(R.id.action_sort_order_replacedle).setChecked(true);
            break;
        case SongSortOrder.SONG_ARTIST:
            sortOrder.findItem(R.id.action_sort_order_artist).setChecked(true);
            break;
        case SongSortOrder.SONG_DATE:
            sortOrder.findItem(R.id.action_sort_order_date).setChecked(true);
            break;
        case SongSortOrder.SONG_DURATION:
            sortOrder.findItem(R.id.action_sort_order_duration).setChecked(true);
            break;
        case SongSortOrder.SONG_YEAR:
            sortOrder.findItem(R.id.action_sort_order_year).setChecked(true);
            break;
        case SongSortOrder.SONG_Z_A:
            sortOrder.findItem(R.id.action_sort_order_replacedle_desc).setChecked(true);
            break;
    }
}

18 Source : ArtistsFragment.java
with GNU General Public License v3.0
from deepshooter

private void setUpSortOrderMenu(SubMenu subMenu) {
    subMenu.removeItem(R.id.action_sort_order_replacedle_desc);
    subMenu.removeItem(R.id.action_sort_order_replacedle);
    subMenu.removeItem(R.id.action_sort_order_date);
    subMenu.removeItem(R.id.action_sort_order_duration);
    subMenu.removeItem(R.id.action_sort_order_year);
    subMenu.removeItem(R.id.action_sort_order_album);
    subMenu.removeItem(R.id.action_sort_order_album_desc);
    switch(getSavedSortOrder()) {
        case ArtistSortOrder.ARTIST_A_Z:
            subMenu.findItem(R.id.action_sort_order_artist).setChecked(true);
            break;
        case ArtistSortOrder.ARTIST_Z_A:
            subMenu.findItem(R.id.action_sort_order_artist_desc).setChecked(true);
            break;
    }
}

18 Source : AlbumsFragment.java
with GNU General Public License v3.0
from deepshooter

private void setUpSortOrderMenu(SubMenu subMenu) {
    subMenu.removeItem(R.id.action_sort_order_replacedle_desc);
    subMenu.removeItem(R.id.action_sort_order_replacedle);
    subMenu.removeItem(R.id.action_sort_order_date);
    subMenu.removeItem(R.id.action_sort_order_duration);
    subMenu.removeItem(R.id.action_sort_order_year);
    subMenu.removeItem(R.id.action_sort_order_artist_desc);
    switch(getSavedSortOrder()) {
        case AlbumSortOrder.ALBUM_A_Z:
            subMenu.findItem(R.id.action_sort_order_album).setChecked(true);
            break;
        case AlbumSortOrder.ALBUM_Z_A:
            subMenu.findItem(R.id.action_sort_order_album_desc).setChecked(true);
            break;
        case AlbumSortOrder.ALBUM_ARTIST:
            subMenu.findItem(R.id.action_sort_order_artist).setChecked(true);
            break;
    }
}

18 Source : ArtistDetailActivity.java
with GNU General Public License v3.0
from deepshooter

private void setUpSortOrderMenu(@NonNull SubMenu sortOrder) {
    switch(getSavedSortOrder()) {
        case ArtistSongSortOrder.SONG_A_Z:
            sortOrder.findItem(R.id.action_sort_order_replacedle).setChecked(true);
            break;
        case ArtistSongSortOrder.SONG_Z_A:
            sortOrder.findItem(R.id.action_sort_order_replacedle_desc).setChecked(true);
            break;
        case ArtistSongSortOrder.SONG_ALBUM:
            sortOrder.findItem(R.id.action_sort_order_album).setChecked(true);
            break;
        case ArtistSongSortOrder.SONG_YEAR:
            sortOrder.findItem(R.id.action_sort_order_year).setChecked(true);
            break;
        case ArtistSongSortOrder.SONG_DURATION:
            sortOrder.findItem(R.id.action_sort_order_artist_song_duration).setChecked(true);
            break;
        case ArtistSongSortOrder.SONG_DATE:
            sortOrder.findItem(R.id.action_sort_order_date).setChecked(true);
            break;
    }
}

18 Source : AlbumDetailsActivity.java
with GNU General Public License v3.0
from deepshooter

private void setUpSortOrderMenu(@NonNull SubMenu sortOrder) {
    switch(getSavedSortOrder()) {
        case AlbumSongSortOrder.SONG_A_Z:
            sortOrder.findItem(R.id.action_sort_order_replacedle).setChecked(true);
            break;
        case AlbumSongSortOrder.SONG_Z_A:
            sortOrder.findItem(R.id.action_sort_order_replacedle_desc).setChecked(true);
            break;
        case AlbumSongSortOrder.SONG_TRACK_LIST:
            sortOrder.findItem(R.id.action_sort_order_track_list).setChecked(true);
            break;
        case AlbumSongSortOrder.SONG_DURATION:
            sortOrder.findItem(R.id.action_sort_order_artist_song_duration).setChecked(true);
            break;
    }
}

18 Source : BaseMenuWrapper.java
with Apache License 2.0
from covidsafewatch

/* access modifiers changed from: package-private */
public final SubMenu getSubMenuWrapper(SubMenu subMenu) {
    if (!(subMenu instanceof SupportSubMenu)) {
        return subMenu;
    }
    SupportSubMenu supportSubMenu = (SupportSubMenu) subMenu;
    if (this.mSubMenus == null) {
        this.mSubMenus = new ArrayMap();
    }
    SubMenu subMenu2 = this.mSubMenus.get(supportSubMenu);
    if (subMenu2 != null) {
        return subMenu2;
    }
    SubMenuWrapperICS subMenuWrapperICS = new SubMenuWrapperICS(this.mContext, supportSubMenu);
    this.mSubMenus.put(supportSubMenu, subMenuWrapperICS);
    return subMenuWrapperICS;
}

18 Source : BaseMenuWrapper.java
with GNU General Public License v2.0
from Cloudslab

final SubMenu getSubMenuWrapper(SubMenu subMenu) {
    if (!(subMenu instanceof SupportSubMenu)) {
        return subMenu;
    }
    SupportSubMenu supportSubMenu = (SupportSubMenu) subMenu;
    if (this.mSubMenus == null) {
        this.mSubMenus = new ArrayMap();
    }
    SubMenu wrappedMenu = (SubMenu) this.mSubMenus.get(supportSubMenu);
    if (wrappedMenu != null) {
        return wrappedMenu;
    }
    wrappedMenu = MenuWrapperFactory.wrapSupportSubMenu(this.mContext, supportSubMenu);
    this.mSubMenus.put(supportSubMenu, wrappedMenu);
    return wrappedMenu;
}

18 Source : NewVideosActionProvider.java
with Apache License 2.0
from archos-sa

@Override
public void onPrepareSubMenu(SubMenu subMenu) {
    if (DBG)
        Log.d(TAG, "onPrepareSubMenu");
}

17 Source : JavaMenuManager.java
with GNU General Public License v3.0
from tranleduy2000

private void addToMenu(SubMenu menu, int iconId, int replacedle, int[] child) {
    SubMenu subMenu = menu.addSubMenu(0, 0, 0, replacedle);
    subMenu.gereplacedem().setIcon(MenuManager.makeMenuNormalIcon(mContext, iconId)).setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    for (int i = 0; i < child.length / 3; i++) {
        Drawable icon = MenuManager.makeMenuNormalIcon(mContext, child[3 * i + 2]);
        subMenu.add(0, child[3 * i], 0, child[3 * i + 1]).setIcon(icon);
    }
}

17 Source : ViewUtils.java
with GNU General Public License v3.0
from ThirtyDegreesRay

public static void selectMenuItem(@NonNull Menu menu, @IdRes int itemId, boolean findSub) {
    boolean find = false;
    for (int i = 0; i < menu.size(); i++) {
        if (!findSub) {
            menu.gereplacedem(i).setChecked(menu.gereplacedem(i).gereplacedemId() == itemId);
        } else {
            if (menu.gereplacedem(i).gereplacedemId() == itemId) {
                find = true;
            }
        }
    }
    if (!findSub) {
        return;
    } else if (find) {
        selectMenuItem(menu, itemId, false);
    } else {
        for (int i = 0; i < menu.size(); i++) {
            SubMenu subMenu = menu.gereplacedem(i).getSubMenu();
            if (subMenu != null)
                selectMenuItem(subMenu, itemId, true);
        }
    }
}

17 Source : PackageTasksFragment.java
with GNU General Public License v3.0
from SmartPack

private void sortMenu(Activity activity) {
    PopupMenu popupMenu = new PopupMenu(activity, mSort);
    Menu menu = popupMenu.getMenu();
    SubMenu sort = menu.addSubMenu(Menu.NONE, 0, Menu.NONE, getString(R.string.sort_by));
    sort.add(Menu.NONE, 1, Menu.NONE, getString(R.string.name)).setCheckable(true).setChecked(Utils.getBoolean("sort_name", false, activity));
    sort.add(Menu.NONE, 2, Menu.NONE, getString(R.string.package_id)).setCheckable(true).setChecked(Utils.getBoolean("sort_id", true, activity));
    menu.add(Menu.NONE, 3, Menu.NONE, getString(R.string.reverse_order)).setCheckable(true).setChecked(Utils.getBoolean("reverse_order", false, activity));
    popupMenu.setOnMenuItemClickListener(item -> {
        switch(item.gereplacedemId()) {
            case 0:
                break;
            case 1:
                if (!Utils.getBoolean("sort_name", false, activity)) {
                    Utils.saveBoolean("sort_name", true, activity);
                    Utils.saveBoolean("sort_id", false, activity);
                    loadUI(activity);
                }
                break;
            case 2:
                if (!Utils.getBoolean("sort_id", true, activity)) {
                    Utils.saveBoolean("sort_id", true, activity);
                    Utils.saveBoolean("sort_name", false, activity);
                    loadUI(activity);
                }
                break;
            case 3:
                if (Utils.getBoolean("reverse_order", false, activity)) {
                    Utils.saveBoolean("reverse_order", false, activity);
                } else {
                    Utils.saveBoolean("reverse_order", true, activity);
                }
                loadUI(activity);
                break;
        }
        return false;
    });
    popupMenu.show();
}

17 Source : SupportMenuInflater.java
with MIT License
from RikkaApps

/**
 * Called internally to fill the given menu. If a sub menu is seen, it will
 * call this recursively.
 */
private void parseMenu(XmlPullParser parser, AttributeSet attrs, Menu menu) throws XmlPullParserException, IOException {
    MenuState menuState = new MenuState(menu);
    int eventType = parser.getEventType();
    String tagName;
    boolean lookingForEndOfUnknownTag = false;
    String unknownTagName = null;
    // This loop will skip to the menu start tag
    do {
        if (eventType == XmlPullParser.START_TAG) {
            tagName = parser.getName();
            if (tagName.equals(XML_MENU)) {
                // Go to next tag
                eventType = parser.next();
                break;
            }
            throw new RuntimeException("Expecting menu, got " + tagName);
        }
        eventType = parser.next();
    } while (eventType != XmlPullParser.END_DOreplacedENT);
    boolean reachedEndOfMenu = false;
    while (!reachedEndOfMenu) {
        switch(eventType) {
            case XmlPullParser.START_TAG:
                if (lookingForEndOfUnknownTag) {
                    break;
                }
                tagName = parser.getName();
                if (tagName.equals(XML_GROUP)) {
                    menuState.readGroup(attrs);
                } else if (tagName.equals(XML_ITEM)) {
                    menuState.readItem(attrs);
                } else if (tagName.equals(XML_MENU)) {
                    // A menu start tag denotes a submenu for an item
                    SubMenu subMenu = menuState.addSubMenuItem();
                    // Parse the submenu into returned SubMenu
                    parseMenu(parser, attrs, subMenu);
                } else {
                    lookingForEndOfUnknownTag = true;
                    unknownTagName = tagName;
                }
                break;
            case XmlPullParser.END_TAG:
                tagName = parser.getName();
                if (lookingForEndOfUnknownTag && tagName.equals(unknownTagName)) {
                    lookingForEndOfUnknownTag = false;
                    unknownTagName = null;
                } else if (tagName.equals(XML_GROUP)) {
                    menuState.resetGroup();
                } else if (tagName.equals(XML_ITEM)) {
                    // Add the item if it hasn't been added (if the item was
                    // a submenu, it would have been added already)
                    if (!menuState.hasAddedItem()) {
                        if (menuState.itemActionProvider != null && menuState.itemActionProvider.hreplacedubMenu()) {
                            menuState.addSubMenuItem();
                        } else {
                            menuState.addItem();
                        }
                    }
                } else if (tagName.equals(XML_MENU)) {
                    reachedEndOfMenu = true;
                }
                break;
            case XmlPullParser.END_DOreplacedENT:
                throw new RuntimeException("Unexpected end of doreplacedent");
        }
        eventType = parser.next();
    }
}

17 Source : MusicUtils.java
with Apache License 2.0
from reyanshmishra

public static void overflowsubmenu(Context context, SubMenu subMenu) {
    String[] cols = new String[] { MediaStore.Audio.Playlists._ID, MediaStore.Audio.Playlists.NAME };
    ContentResolver resolver = context.getContentResolver();
    if (resolver == null) {
        System.out.println("resolver = null");
    } else {
        String whereclause = MediaStore.Audio.Playlists.NAME + " != ''";
        Cursor cur = resolver.query(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI, cols, whereclause, null, MediaStore.Audio.Playlists.NAME);
        subMenu.clear();
        subMenu.add(0, Defs.NEW_PLAYLIST, 0, R.string.new_playlist);
        if (cur != null && cur.getCount() > 0) {
            // sub.addSeparator(1, 0);
            cur.moveToFirst();
            while (!cur.isAfterLast()) {
                Intent intent = new Intent();
                intent.putExtra("playlist", cur.getLong(0));
                subMenu.add(0, Defs.PLAYLIST_SELECTED, 0, cur.getString(1)).setIntent(intent);
                cur.moveToNext();
            }
        }
        if (cur != null) {
            cur.close();
        }
    }
}

17 Source : MusicUtils.java
with Apache License 2.0
from reyanshmishra

public static void makePlaylistMenu(Context context, SubMenu sub, int groupdId) {
    String[] cols = new String[] { MediaStore.Audio.Playlists._ID, MediaStore.Audio.Playlists.NAME };
    ContentResolver resolver = context.getContentResolver();
    if (resolver == null) {
        System.out.println("resolver = null");
    } else {
        String whereclause = MediaStore.Audio.Playlists.NAME + " != ''";
        Cursor cur = resolver.query(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI, cols, whereclause, null, MediaStore.Audio.Playlists.NAME);
        sub.clear();
        sub.add(groupdId, Defs.NEW_PLAYLIST, 0, R.string.new_playlist);
        if (cur != null && cur.getCount() > 0) {
            // sub.addSeparator(1, 0);
            cur.moveToFirst();
            while (!cur.isAfterLast()) {
                Intent intent = new Intent();
                intent.putExtra("playlist", cur.getLong(0));
                sub.add(groupdId, Defs.PLAYLIST_SELECTED, 0, cur.getString(1)).setIntent(intent);
                cur.moveToNext();
            }
        }
        if (cur != null) {
            cur.close();
        }
    }
}

17 Source : UserProfileActivity.java
with MIT License
from mecid

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.user_profile, menu);
    if (mUser != null && TextUtils.equals(mAccount.screenName(), mUser.getScreenName())) {
        menu.findItem(R.id.menu_direct).setVisible(false);
        menu.findItem(R.id.menu_reply).setVisible(false);
        menu.findItem(R.id.menu_spam).setVisible(false);
        menu.findItem(R.id.menu_block).setVisible(false);
        menu.findItem(R.id.menu_follow).setVisible(false);
    }
    List<UserList> userLists = mUserListsModel.lists().toBlocking().first();
    if (mUser != null && !userLists.isEmpty()) {
        final SubMenu listSubMenu = menu.addSubMenu(R.string.add_to_list);
        for (UserList userList : userLists) {
            listSubMenu.add(0, (int) userList.listId(), Menu.NONE, userList.name());
        }
    }
    if (mRelationship != null) {
        boolean isFollowing = mRelationship.isSourceFollowingTarget();
        boolean isBlocking = mRelationship.isSourceBlockingTarget();
        menu.findItem(R.id.menu_follow).setIcon(isFollowing ? R.drawable.ic_account_remove : R.drawable.ic_person_add).setreplacedle(isFollowing ? R.string.unfollow : R.string.follow);
        menu.findItem(R.id.menu_block).setreplacedle(isBlocking ? R.string.unblock : R.string.block);
    }
    return super.onCreateOptionsMenu(menu);
}

17 Source : MainActivity.java
with Apache License 2.0
from jruesga

@SuppressLint("RestrictedApi")
private void updateAccountCustomFilters() {
    // Remove all custom filters and re-add them
    final DrawerNavigationMenu menu = (DrawerNavigationMenu) mBinding.drawerNavigationView.getMenu();
    int myFiltersGroupIndex = menu.findGroupIndex(R.id.category_my_filters);
    MenuItem group = menu.gereplacedem(myFiltersGroupIndex);
    SubMenu myFiltersSubMenu = group.getSubMenu();
    int count = myFiltersSubMenu.size() - 1;
    for (int i = count; i >= 0; i--) {
        ((DrawerNavigationSubMenu) myFiltersSubMenu).removeItemAt(i);
    }
    mCustomFilters = Preferences.getAccountCustomFilters(this, mAccount);
    if (mCustomFilters != null) {
        int i = 0;
        for (CustomFilter filter : mCustomFilters) {
            int id = MY_FILTERS_GROUP_BASE_ID + i;
            String replacedle = filter.mName + DrawerNavigationView.SEPARATOR + filter.mQuery.toString() + DrawerNavigationView.SEPARATOR + "ic_close";
            MenuItem item = myFiltersSubMenu.add(group.getGroupId(), id, Menu.NONE, replacedle);
            item.setIcon(R.drawable.ic_filter);
            item.setCheckable(true);
            i++;
        }
    }
    menu.setGroupVisible(R.id.category_my_filters, !mModel.isAccountExpanded && mCustomFilters != null && !mCustomFilters.isEmpty());
    mBinding.drawerNavigationView.setCheckedItem(mModel.currentNavigationItemId);
}

17 Source : MainActivity.java
with GNU General Public License v3.0
from guardaco

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

17 Source : BookSourceActivity.java
with GNU General Public License v3.0
from gedoor

/**
 * Created by GKF on 2017/12/16.
 * 书源管理
 */
public clreplaced BookSourceActivity extends MBaseActivity<BookSourceContract.Presenter> implements BookSourceContract.View {

    private final int IMPORT_SOURCE = 102;

    private final int REQUEST_QR = 202;

    private ActivityBookSourceBinding binding;

    private ItemTouchCallback itemTouchCallback;

    private boolean selectAll = true;

    private MenuItem groupItem;

    private SubMenu groupMenu;

    private BookSourceAdapter adapter;

    private SearchView.SearchAutoComplete mSearchAutoComplete;

    private boolean isSearch;

    public static void startThis(Activity activity, int requestCode) {
        activity.startActivityForResult(new Intent(activity, BookSourceActivity.clreplaced), requestCode);
    }

    @Override
    protected BookSourceContract.Presenter initInjector() {
        return new BookSourcePresenter();
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
    }

    @Override
    protected void onCreateActivity() {
        getWindow().getDecorView().setBackgroundColor(ThemeStore.backgroundColor(this));
        binding = ActivityBookSourceBinding.inflate(getLayoutInflater());
        setContentView(binding.getRoot());
        this.setSupportActionBar(binding.toolbar);
        setupActionBar();
    }

    @Override
    protected void onPause() {
        super.onPause();
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
    }

    @Override
    protected void initData() {
    }

    @Override
    protected void bindView() {
        super.bindView();
        initSearchView();
        initRecyclerView();
    }

    @Override
    protected void firstRequest() {
        super.firstRequest();
        refreshBookSource();
    }

    private void initSearchView() {
        mSearchAutoComplete = binding.searchView.findViewById(R.id.search_src_text);
        mSearchAutoComplete.setTextSize(16);
        binding.searchView.setQueryHint(getString(R.string.search_book_source));
        binding.searchView.onActionViewExpanded();
        binding.searchView.clearFocus();
        binding.searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {

            @Override
            public boolean onQueryTextSubmit(String query) {
                return false;
            }

            @Override
            public boolean onQueryTextChange(String newText) {
                isSearch = !TextUtils.isEmpty(newText);
                refreshBookSource();
                return false;
            }
        });
    }

    private void initRecyclerView() {
        binding.recyclerView.setLayoutManager(new LinearLayoutManager(this));
        binding.recyclerView.addItemDecoration(new DividerItemDecoration(this, LinearLayout.VERTICAL));
        adapter = new BookSourceAdapter(this);
        binding.recyclerView.setAdapter(adapter);
        itemTouchCallback = new ItemTouchCallback();
        itemTouchCallback.setOnItemTouchCallbackListener(adapter.gereplacedemTouchCallbackListener());
        ItemTouchHelper itemTouchHelper = new ItemTouchHelper(itemTouchCallback);
        itemTouchHelper.attachToRecyclerView(binding.recyclerView);
        setDragEnable(getSort());
    }

    private void setDragEnable(int sort) {
        if (itemTouchCallback == null) {
            return;
        }
        adapter.setSort(sort);
        itemTouchCallback.setDragEnable(sort == 0);
    }

    public void upDateSelectAll() {
        selectAll = true;
        for (BookSourceBean bookSourceBean : adapter.getDataList()) {
            if (!bookSourceBean.getEnable()) {
                selectAll = false;
                break;
            }
        }
    }

    private void selectAllDataS() {
        for (BookSourceBean bookSourceBean : adapter.getDataList()) {
            bookSourceBean.setEnable(!selectAll);
        }
        adapter.notifyDataSetChanged();
        selectAll = !selectAll;
        AsyncTask.execute(() -> DbHelper.getDaoSession().getBookSourceBeanDao().insertOrReplaceInTx(adapter.getDataList()));
        setResult(RESULT_OK);
    }

    private void revertSelection() {
        for (BookSourceBean bookSourceBean : adapter.getDataList()) {
            bookSourceBean.setEnable(!bookSourceBean.getEnable());
        }
        adapter.notifyDataSetChanged();
        saveDate(adapter.getDataList());
        setResult(RESULT_OK);
    }

    public void upSearchView(int size) {
        binding.searchView.setQueryHint(getString(R.string.search_book_source_num, size));
    }

    @Override
    public void refreshBookSource() {
        if (isSearch) {
            List<BookSourceBean> sourceBeanList;
            if (binding.searchView.getQuery().toString().equals("enabled")) {
                sourceBeanList = DbHelper.getDaoSession().getBookSourceBeanDao().queryBuilder().where(BookSourceBeanDao.Properties.Enable.eq(1)).orderRaw(BookSourceManager.getBookSourceSort()).orderAsc(BookSourceBeanDao.Properties.SerialNumber).list();
            } else {
                String term = "%" + binding.searchView.getQuery() + "%";
                sourceBeanList = DbHelper.getDaoSession().getBookSourceBeanDao().queryBuilder().whereOr(BookSourceBeanDao.Properties.BookSourceName.like(term), BookSourceBeanDao.Properties.BookSourceGroup.like(term), BookSourceBeanDao.Properties.BookSourceUrl.like(term)).orderRaw(BookSourceManager.getBookSourceSort()).orderAsc(BookSourceBeanDao.Properties.SerialNumber).list();
            }
            adapter.resetDataS(sourceBeanList);
        } else {
            adapter.resetDataS(BookSourceManager.getAllBookSource());
        }
    }

    public void delBookSource(BookSourceBean bookSource) {
        mPresenter.delData(bookSource);
        setResult(RESULT_OK);
    }

    public void saveDate(BookSourceBean date) {
        mPresenter.saveData(date);
        setResult(RESULT_OK);
    }

    public void saveDate(List<BookSourceBean> date) {
        mPresenter.saveData(date);
        setResult(RESULT_OK);
    }

    // 设置ToolBar
    private void setupActionBar() {
        ActionBar actionBar = getSupportActionBar();
        if (actionBar != null) {
            actionBar.setDisplayHomeAsUpEnabled(true);
            actionBar.setreplacedle(R.string.book_source_manage);
        }
    }

    // 添加菜单
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_book_source_activity, menu);
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        groupItem = menu.findItem(R.id.action_group);
        groupMenu = groupItem.getSubMenu();
        upGroupMenu();
        upSortMenu();
        return super.onPrepareOptionsMenu(menu);
    }

    // 菜单
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.gereplacedemId();
        switch(id) {
            case R.id.action_add_book_source:
                addBookSource();
                break;
            case R.id.action_select_all:
                selectAllDataS();
                break;
            case R.id.action_import_book_source_local:
                selectBookSourceFile();
                break;
            case R.id.action_import_book_source_onLine:
                importBookSourceOnLine();
                break;
            case R.id.action_import_book_source_rwm:
                scanBookSource();
                break;
            case R.id.action_revert_selection:
                revertSelection();
                break;
            case R.id.action_del_select:
                deleteDialog();
                break;
            case R.id.action_check_book_source:
                mPresenter.checkBookSource(adapter.getSelectDataList());
                break;
            case R.id.action_check_find_source:
                mPresenter.checkFindSource(adapter.getSelectDataList());
                break;
            case R.id.sort_manual:
                upSourceSort(0);
                break;
            case R.id.sort_auto:
                upSourceSort(1);
                break;
            case R.id.sort_pin_yin:
                upSourceSort(2);
                break;
            case R.id.show_enabled:
                binding.searchView.setQuery("enabled", false);
                break;
            case R.id.action_share_wifi:
                ShareService.startThis(this, adapter.getSelectDataList());
                break;
            case android.R.id.home:
                finish();
                break;
        }
        if (item.getGroupId() == R.id.source_group) {
            binding.searchView.setQuery(item.getreplacedle(), true);
        }
        return super.onOptionsItemSelected(item);
    }

    public void upGroupMenu() {
        if (groupMenu == null)
            return;
        groupMenu.removeGroup(R.id.source_group);
        List<String> groupList = BookSourceManager.getGroupList();
        for (String groupName : new ArrayList<>(groupList)) {
            groupMenu.add(R.id.source_group, Menu.NONE, Menu.NONE, groupName);
        }
    }

    private void upSortMenu() {
        groupMenu.gereplacedem(0).setChecked(false);
        groupMenu.gereplacedem(1).setChecked(false);
        groupMenu.gereplacedem(2).setChecked(false);
        groupMenu.gereplacedem(getSort()).setChecked(true);
    }

    private void upSourceSort(int sort) {
        preferences.edit().putInt("SourceSort", sort).apply();
        upSortMenu();
        setDragEnable(sort);
        refreshBookSource();
    }

    public int getSort() {
        return preferences.getInt("SourceSort", 0);
    }

    private void scanBookSource() {
        Intent intent = new Intent(this, QRCodeScanActivity.clreplaced);
        startActivityForResult(intent, REQUEST_QR);
    }

    private void addBookSource() {
        Intent intent = new Intent(this, SourceEditActivity.clreplaced);
        startActivityForResult(intent, SourceEditActivity.EDIT_SOURCE);
    }

    private void deleteDialog() {
        AlertDialog alertDialog = new AlertDialog.Builder(this).setreplacedle(R.string.delete).setMessage(R.string.del_msg).setPositiveButton(R.string.ok, (dialog, which) -> mPresenter.delData(adapter.getSelectDataList())).setNegativeButton(R.string.cancel, (dialogInterface, i) -> {
        }).show();
        ATH.setAlertDialogTint(alertDialog);
    }

    private void selectBookSourceFile() {
        new PermissionsCompat.Builder(this).addPermissions(Permissions.READ_EXTERNAL_STORAGE, Permissions.WRITE_EXTERNAL_STORAGE).rationale(R.string.please_grant_storage_permission).onGranted((requestCode) -> {
            FilePicker filePicker = new FilePicker(BookSourceActivity.this, FilePicker.FILE);
            filePicker.setBackgroundColor(getResources().getColor(R.color.background));
            filePicker.setTopBackgroundColor(getResources().getColor(R.color.background));
            filePicker.setAllowExtensions(getResources().getStringArray(R.array.text_suffix));
            filePicker.setOnFilePickListener(s -> mPresenter.importBookSourceLocal(s));
            filePicker.show();
            filePicker.getSubmitButton().setText(R.string.sys_file_picker);
            filePicker.getSubmitButton().setOnClickListener(view -> {
                filePicker.dismiss();
                selectFileSys();
            });
            return Unit.INSTANCE;
        }).request();
    }

    private void importBookSourceOnLine() {
        String cu = ACache.get(this).getreplacedtring("sourceUrl");
        String[] cacheUrls = cu == null ? new String[] {} : cu.split(";");
        List<String> urlList = new ArrayList<>(Arrays.asList(cacheUrls));
        InputDialog.builder(this).setDefaultValue("").setreplacedle(getString(R.string.input_book_source_url)).setShowDel(true).setAdapterValues(urlList).setCallback(new InputDialog.Callback() {

            @Override
            public void setInputText(String inputText) {
                inputText = StringUtils.trim(inputText);
                if (!urlList.contains(inputText)) {
                    urlList.add(0, inputText);
                    ACache.get(BookSourceActivity.this).put("sourceUrl", TextUtils.join(";", urlList));
                }
                mPresenter.importBookSource(inputText);
            }

            @Override
            public void delete(String value) {
                urlList.remove(value);
                ACache.get(BookSourceActivity.this).put("sourceUrl", TextUtils.join(";", urlList));
            }
        }).show();
    }

    private void selectFileSys() {
        Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
        intent.addCategory(Intent.CATEGORY_OPENABLE);
        intent.putExtra(Intent.EXTRA_MIME_TYPES, new String[] { "text/*", "application/json" });
        // 设置类型
        intent.setType("*/*");
        startActivityForResult(intent, IMPORT_SOURCE);
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (resultCode == RESULT_OK) {
            switch(requestCode) {
                case SourceEditActivity.EDIT_SOURCE:
                    refreshBookSource();
                    setResult(RESULT_OK);
                    break;
                case IMPORT_SOURCE:
                    if (data != null && data.getData() != null) {
                        mPresenter.importBookSourceLocal(FileUtils.getPath(this, data.getData()));
                    }
                    break;
                case REQUEST_QR:
                    if (data != null) {
                        String result = data.getStringExtra("result");
                        if (!StringUtils.isTrimEmpty(result)) {
                            if (result.replaceAll("\\s", "").matches("^\\{.*\\}$")) {
                                mPresenter.importBookSource(result);
                                break;
                            }
                            result = result.trim();
                            String[] string = result.split("#", 2);
                            if (string.length == 2) {
                                if (string[1].replaceAll("\\s", "").matches("^\\{.*\\}$")) {
                                    mPresenter.importBookSource(string[1]);
                                    break;
                                }
                            }
                            mPresenter.importBookSource(result);
                        }
                    }
                    break;
            }
        }
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            if (isSearch) {
                try {
                    // 如果搜索框中有文字,则会先清空文字.
                    mSearchAutoComplete.setText("");
                } catch (Exception e) {
                    e.printStackTrace();
                }
                return true;
            }
        }
        return super.onKeyDown(keyCode, event);
    }

    @Override
    public Snackbar getSnackBar(String msg, int length) {
        return Snackbar.make(binding.llContent, msg, length);
    }

    @Override
    public void showSnackBar(String msg, int length) {
        super.showSnackBar(binding.llContent, msg, length);
    }
}

17 Source : HomeFrag.java
with GNU General Public License v3.0
from BarrenWolfsbane

private void initiateTrisStateSwitch() {
    Menu m = b.navView.getMenu();
    SubMenu sm = m.findItem(R.id.subItemsItem).getSubMenu();
    final TriStateToggleButton tripleSwitch = (TriStateToggleButton) sm.findItem(R.id.online_Mode_Seek).getActionView();
    MenuItem connectionModeTxt = sm.findItem(R.id.online_Mode_Seek);
    connectionModeTxt.setreplacedle("Data Mode: Offline");
    tripleSwitch.setOnToggleChanged((toggleStatus, booleanToggleStatus, toggleIntValue) -> {
        switch(toggleStatus) {
            case off:
                connectionModeTxt.setreplacedle("Data Mode: Offline");
                break;
            case mid:
                connectionModeTxt.setreplacedle("Data Mode: Local");
                break;
            case on:
                connectionModeTxt.setreplacedle("Data Mode: Online");
                break;
        }
    });
    MenuItem testButton = sm.findItem(R.id.testButton);
    String isConnected;
    if (BAINServer.getInstance().getBr().isNetworkConnected())
        isConnected = "Network Connected";
    else
        isConnected = "Network not Connected";
    testButton.setreplacedle(isConnected);
    testButton.setOnMenuItemClickListener(v -> {
        String testString = BAINServer.getInstance().getUser().toJSON().toString();
        testButton.setreplacedle("Test:" + Utils.getIPAddress(false));
        /*
            BAINServer.getInstance().SendToast("Test:"+testString);

            Post thisPost = new Post();
            thisPost.setUid("SYSTEM - DEBUG");
            thisPost.setPostType(Post.SHORT280);
            thisPost.setText(testString);
            thisPost.setTimeCreated(currentTimeMillis());
            thisPost.setPid(Crypt.md5(currentTimeMillis()+testString)); //has time and post to make ID

            BAINServer.getInstance().getDb().open();
            BAINServer.getInstance().getDb().insert_Post(thisPost);
            BAINServer.getInstance().getDb().close();
            testButton.setreplacedle(testString);
            */
        return false;
    });
}

17 Source : FontUtils.java
with MIT License
from androidmads

public void applyFontToSubMenu(SubMenu menu, Typeface typeface) {
    for (int i = 0; i < menu.size(); i++) {
        MenuItem menuItem = menu.gereplacedem(i);
        SubMenu subMenu = menuItem.getSubMenu();
        if (subMenu != null && subMenu.size() > 0) {
            for (int j = 0; j < subMenu.size(); j++) {
                MenuItem subMenuItem = subMenu.gereplacedem(j);
                applyFontToMenuItem(subMenuItem, typeface);
            }
        }
        applyFontToMenuItem(menuItem, typeface);
    }
}

16 Source : MicroActivity.java
with Apache License 2.0
from woesss

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    menu.clear();
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.midlet_displayable, menu);
    if (current != null) {
        if (current instanceof Canvas) {
            SubMenu group = menu.gereplacedem(0).getSubMenu();
            if (actionBarEnabled) {
                inflater.inflate(R.menu.midlet_canvas_no_keys2, menu);
            } else {
                inflater.inflate(R.menu.midlet_canvas_no_keys, group);
            }
            VirtualKeyboard vk = ContextHolder.getVk();
            if (vk instanceof FixedKeyboard) {
                inflater.inflate(R.menu.midlet_canvas_fixed, group);
            } else if (vk != null) {
                inflater.inflate(R.menu.midlet_canvas, group);
            }
        }
        for (Command cmd : current.getCommands()) {
            menu.add(Menu.NONE, cmd.hashCode(), Menu.NONE, cmd.getAndroidLabel());
        }
    }
    return super.onPrepareOptionsMenu(menu);
}

16 Source : NavigationActivity.java
with GNU General Public License v3.0
from SmartPack

private void appendFragments(boolean setShortcuts) {
    mActualFragments.clear();
    Menu menu = mNavigationView.getMenu();
    menu.clear();
    SubMenu lastSubMenu = null;
    for (NavigationFragment navigationFragment : mFragments) {
        Clreplaced<? extends Fragment> fragmentClreplaced = navigationFragment.mFragmentClreplaced;
        int id = navigationFragment.mId;
        if (fragmentClreplaced == null) {
            lastSubMenu = menu.addSubMenu(id);
            mActualFragments.put(id, null);
        } else if (Prefs.getBoolean(fragmentClreplaced.getSimpleName() + "_enabled", true, this)) {
            MenuItem menuItem = lastSubMenu == null ? menu.add(0, id, 0, id) : lastSubMenu.add(0, id, 0, id);
            menuItem.setIcon(ViewUtils.getColoredIcon(Prefs.getBoolean("section_icons", true, this) && navigationFragment.mDrawable != 0 ? navigationFragment.mDrawable : R.drawable.ic_blank, this));
            menuItem.setCheckable(true);
            if (mSelection != 0) {
                mNavigationView.setCheckedItem(mSelection);
            }
            mActualFragments.put(id, fragmentClreplaced);
        }
    }
    if (setShortcuts) {
        setShortcuts();
    }
}

16 Source : BaseMenuWrapper.java
with MIT License
from RikkaApps

final SubMenu getSubMenuWrapper(final SubMenu subMenu) {
    if (subMenu instanceof SupportSubMenu) {
        final SupportSubMenu supportSubMenu = (SupportSubMenu) subMenu;
        // Instantiate Map if null
        if (mSubMenus == null) {
            mSubMenus = new SimpleArrayMap<>();
        }
        SubMenu wrappedMenu = mSubMenus.get(supportSubMenu);
        if (null == wrappedMenu) {
            wrappedMenu = new SubMenuWrapperICS(mContext, supportSubMenu);
            mSubMenus.put(supportSubMenu, wrappedMenu);
        }
        return wrappedMenu;
    }
    return subMenu;
}

16 Source : MainActivity2.java
with Apache License 2.0
from RealMoMo

/**
 * �����˵�
 *
 * ��дonCreateOptionsMenu
 *
 * ͨ��������ʽ��Ӳ˵���
 */
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // ��д Activity �� onCreateOptionsMenu(Menu menu) �������ڷ����ڵ��� Menu ����ķ�������Ӳ˵�����Ӳ˵���
    // ���һ����ͨ�˵�(һ���˵�)
    // groupId,itemId,orderId,replacedle
    MenuItem add_item = menu.add(0, 0x666, 0, "���");
    // ����ͼƬ
    add_item.setIcon(R.drawable.d03);
    // ��ʾ�ڲ˵���
    add_item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    // ���������˵�
    SubMenu subMenu = menu.addSubMenu("�ı���С");
    // �����д����IJ˵������ö����˵���ͼƬûʲô����,û��Ӧ��(xml����)
    // subMenu.setHeaderIcon(R.drawable.ic_launcher);
    // subMenu.setIcon(R.drawable.ic_launcher);
    subMenu.add(1, 0x101, 0, "��");
    subMenu.add(1, 0x102, 0, "��");
    subMenu.add(1, 0x103, 0, "С");
    return super.onCreateOptionsMenu(menu);
}

16 Source : MapsActivity.java
with MIT License
from RailwayStations

@Override
public boolean onCreateOptionsMenu(final Menu menu) {
    super.onCreateOptionsMenu(menu);
    getMenuInflater().inflate(R.menu.maps, menu);
    final MenuItem item = menu.findItem(R.id.menu_toggle_mypos);
    myLocSwitch = new CheckBox(this);
    myLocSwitch.setButtonDrawable(R.drawable.ic_gps_fix_selector);
    myLocSwitch.setChecked(baseApplication.isLocationUpdates());
    item.setActionView(myLocSwitch);
    myLocSwitch.setOnCheckedChangeListener((buttonView, isChecked) -> {
        baseApplication.setLocationUpdates(isChecked);
        if (isChecked) {
            askedForPermission = false;
            registerLocationManager();
        } else {
            unregisterLocationManager();
        }
    });
    final String map = baseApplication.getMap();
    final MenuItem osmMapnick = menu.findItem(R.id.osm_mapnik);
    osmMapnick.setChecked(map == null);
    osmMapnick.setOnMenuItemClickListener(new MapMenuListener(this, baseApplication, null));
    final SubMenu mapSubmenu = menu.findItem(R.id.maps_submenu).getSubMenu();
    for (final OnlineTileSource tileSource : onlineTileSources.values()) {
        final MenuItem mapItem = mapSubmenu.add(R.id.maps_group, NONE, NONE, tileSource.getName());
        mapItem.setChecked(tileSource.getName().equals(map));
        mapItem.setOnMenuItemClickListener(new MapMenuListener(this, baseApplication, tileSource.getName()));
    }
    final Uri mapDirectory = baseApplication.getMapDirectoryUri();
    if (mapDirectory != null) {
        final DoreplacedentFile doreplacedentsTree = getDoreplacedentFileFromTreeUri(mapDirectory);
        if (doreplacedentsTree != null) {
            for (final DoreplacedentFile file : doreplacedentsTree.listFiles()) {
                if (file.isFile() && file.getName().endsWith(".map")) {
                    final MenuItem mapItem = mapSubmenu.add(R.id.maps_group, NONE, NONE, file.getName());
                    mapItem.setChecked(file.getUri().equals(baseApplication.toUri(map)));
                    mapItem.setOnMenuItemClickListener(new MapMenuListener(this, baseApplication, file.getUri().toString()));
                }
            }
        }
    }
    mapSubmenu.setGroupCheckable(R.id.maps_group, true, true);
    final MenuItem mapFolder = mapSubmenu.add(R.string.map_folder);
    mapFolder.setOnMenuItemClickListener(item1 -> {
        openMapDirectoryChooser();
        return false;
    });
    final Uri mapTheme = baseApplication.getMapThemeUri();
    final Uri mapThemeDirectory = baseApplication.getMapThemeDirectoryUri();
    final MenuItem defaultTheme = menu.findItem(R.id.default_theme);
    defaultTheme.setChecked(mapTheme == null);
    defaultTheme.setOnMenuItemClickListener(new MapThemeMenuListener(this, baseApplication, null));
    final SubMenu themeSubmenu = menu.findItem(R.id.themes_submenu).getSubMenu();
    if (mapThemeDirectory != null) {
        final DoreplacedentFile doreplacedentsTree = getDoreplacedentFileFromTreeUri(mapThemeDirectory);
        if (doreplacedentsTree != null) {
            for (final DoreplacedentFile file : doreplacedentsTree.listFiles()) {
                if (file.isFile() && file.getName().endsWith(".xml")) {
                    final String themeName = file.getName();
                    final MenuItem themeItem = themeSubmenu.add(R.id.themes_group, NONE, NONE, themeName);
                    themeItem.setChecked(file.getUri().equals(mapTheme));
                    themeItem.setOnMenuItemClickListener(new MapThemeMenuListener(this, baseApplication, file.getUri()));
                } else if (file.isDirectory()) {
                    final DoreplacedentFile childFile = file.findFile(file.getName() + ".xml");
                    if (childFile != null) {
                        final String themeName = file.getName();
                        final MenuItem themeItem = themeSubmenu.add(R.id.themes_group, NONE, NONE, themeName);
                        themeItem.setChecked(childFile.getUri().equals(mapTheme));
                        themeItem.setOnMenuItemClickListener(new MapThemeMenuListener(this, baseApplication, childFile.getUri()));
                    }
                }
            }
        }
    }
    themeSubmenu.setGroupCheckable(R.id.themes_group, true, true);
    final MenuItem themeFolder = themeSubmenu.add(R.string.theme_folder);
    themeFolder.setOnMenuItemClickListener(item12 -> {
        openThemeDirectoryChooser();
        return false;
    });
    return true;
}

16 Source : EffectManager.java
with Apache License 2.0
from protyposis

public void addToMenu(Menu menu) {
    SubMenu submenu = menu.findItem(R.id.action_list_effects).getSubMenu();
    int count = 0;
    for (String effectName : getEffectNames()) {
        submenu.add(R.id.action_list_effects, count++, Menu.NONE, effectName);
    }
    mParameterToggleMenuItem = menu.findItem(R.id.action_toggle_parameters);
}

16 Source : Dettaglio.java
with GNU General Public License v3.0
from michelesalvador

// Menu del FAB: solo coi metodi che non sono già presenti in box
PopupMenu menuFAB(View vista) {
    PopupMenu popup = new PopupMenu(this, vista);
    Menu menu = popup.getMenu();
    // questi oggetti compaiono nel FAB di Evento se esiste un Indirizzo
    String[] conIndirizzo = { "Www", "Email", "Phone", "Fax" };
    int u = 0;
    for (Uovo uovo : ovi) {
        boolean giaMesso = false;
        boolean indirizzoPresente = false;
        for (int i = 0; i < box.getChildCount(); i++) {
            Object ogg = box.getChildAt(i).getTag(R.id.tag_oggetto);
            if (ogg != null && ogg.equals(uovo.oggetto))
                giaMesso = true;
            if (ogg instanceof Address)
                indirizzoPresente = true;
        }
        if (!giaMesso) {
            if (uovo.comune || (indirizzoPresente && Arrays.asList(conIndirizzo).contains(uovo.oggetto)))
                menu.add(0, u, 0, uovo.replacedolo);
        }
        u++;
    }
    if (oggetto instanceof Family) {
        boolean ciSonoFigli = !((Family) oggetto).getChildRefs().isEmpty();
        SubMenu subNuovi = menu.addSubMenu(0, 100, 0, R.string.new_relative);
        // todo? nascondere Coniuge se ci sono già nella famiglia?
        subNuovi.add(0, 120, 0, ciSonoFigli ? R.string.parent : R.string.spouse);
        // todo? o magari mettere avviso "Questa famiglia ha già i genitori... Vuoi forse creare un altro matrimonio per uno dei genitori?"
        subNuovi.add(0, 121, 0, R.string.child);
        if (U.ciSonoIndividuiCollegabili(unRappresentanteDellaFamiglia)) {
            SubMenu subCollega = menu.addSubMenu(0, 100, 0, R.string.link_person);
            subCollega.add(0, 122, 0, ciSonoFigli ? R.string.parent : R.string.spouse);
            subCollega.add(0, 123, 0, R.string.child);
        }
        SubMenu subEvento = menu.addSubMenu(0, 100, 0, R.string.event);
        subEvento.add(0, 124, 0, R.string.marriage);
        subEvento.add(0, 125, 0, R.string.divorce);
        // Crea la lista degli altri eventi che si possono inserire
        Set<String> eventiIndividuo = EventFact.PERSONAL_EVENT_FACT_TAGS;
        for (String tag : EventFact.FAMILY_EVENT_FACT_TAGS) eventiIndividuo.remove(tag);
        eventiVari = new TreeMap<>(EventFact.DISPLAY_TYPE);
        for (String tag : eventiIndividuo) eventiVari.remove(tag);
        Iterator<Map.Entry<String, String>> eventi = eventiVari.entrySet().iterator();
        while (eventi.hasNext()) {
            // Rimuove i tag lunghi e _speciali
            Map.Entry<String, String> ev = eventi.next();
            if (ev.getKey().length() > 4 || ev.getKey().startsWith("_"))
                eventi.remove();
        }
        eventiVari.remove("MARR");
        eventiVari.remove("DIV");
        SubMenu subAltri = subEvento.addSubMenu(0, 100, 0, R.string.other);
        int i = 0;
        for (TreeMap.Entry<String, String> event : eventiVari.entrySet()) {
            String eventLabel = event.getValue();
            if (Globale.preferenze.esperto)
                eventLabel += " - " + event.getKey();
            subAltri.add(0, 200 + i, 0, eventLabel);
            i++;
        }
    }
    if (oggetto instanceof Source && findViewById(R.id.citazione_fonte) == null) {
        // todo dubbio: non dovrebbe essere citazione_ARCHIVIO ?
        SubMenu subArchivio = menu.addSubMenu(0, 100, 0, R.string.repository);
        subArchivio.add(0, 101, 0, R.string.new_repository);
        if (!gc.getRepositories().isEmpty())
            subArchivio.add(0, 102, 0, R.string.link_repository);
    }
    if (oggetto instanceof NoteContainer) {
        SubMenu subNota = menu.addSubMenu(0, 100, 0, R.string.note);
        subNota.add(0, 103, 0, R.string.new_note);
        subNota.add(0, 104, 0, R.string.new_shared_note);
        if (!gc.getNotes().isEmpty())
            subNota.add(0, 105, 0, R.string.link_shared_note);
    }
    if (oggetto instanceof MediaContainer) {
        SubMenu subMedia = menu.addSubMenu(0, 100, 0, R.string.media);
        subMedia.add(0, 106, 0, R.string.new_media);
        subMedia.add(0, 107, 0, R.string.new_shared_media);
        if (!gc.getMedia().isEmpty())
            subMedia.add(0, 108, 0, R.string.link_shared_media);
    }
    if ((oggetto instanceof SourceCitationContainer || oggetto instanceof Note) && Globale.preferenze.esperto) {
        SubMenu subFonte = menu.addSubMenu(0, 100, 0, R.string.source);
        subFonte.add(0, 109, 0, R.string.new_source_note);
        subFonte.add(0, 110, 0, R.string.new_source);
        if (!gc.getSources().isEmpty())
            subFonte.add(0, 111, 0, R.string.link_source);
    }
    return popup;
}

16 Source : LibraryFragment.java
with GNU General Public License v3.0
from MaxFour

private void setUpGridSizeMenu(@NonNull AbsLibraryPagerRecyclerViewCustomGridSizeFragment fragment, @NonNull SubMenu gridSizeMenu) {
    switch(fragment.getGridSize()) {
        case 1:
            gridSizeMenu.findItem(R.id.action_grid_size_1).setChecked(true);
            break;
        case 2:
            gridSizeMenu.findItem(R.id.action_grid_size_2).setChecked(true);
            break;
        case 3:
            gridSizeMenu.findItem(R.id.action_grid_size_3).setChecked(true);
            break;
        case 4:
            gridSizeMenu.findItem(R.id.action_grid_size_4).setChecked(true);
            break;
        case 5:
            gridSizeMenu.findItem(R.id.action_grid_size_5).setChecked(true);
            break;
        case 6:
            gridSizeMenu.findItem(R.id.action_grid_size_6).setChecked(true);
            break;
        case 7:
            gridSizeMenu.findItem(R.id.action_grid_size_7).setChecked(true);
            break;
        case 8:
            gridSizeMenu.findItem(R.id.action_grid_size_8).setChecked(true);
            break;
    }
    int maxGridSize = fragment.getMaxGridSize();
    if (maxGridSize < 8) {
        gridSizeMenu.findItem(R.id.action_grid_size_8).setVisible(false);
    }
    if (maxGridSize < 7) {
        gridSizeMenu.findItem(R.id.action_grid_size_7).setVisible(false);
    }
    if (maxGridSize < 6) {
        gridSizeMenu.findItem(R.id.action_grid_size_6).setVisible(false);
    }
    if (maxGridSize < 5) {
        gridSizeMenu.findItem(R.id.action_grid_size_5).setVisible(false);
    }
    if (maxGridSize < 4) {
        gridSizeMenu.findItem(R.id.action_grid_size_4).setVisible(false);
    }
    if (maxGridSize < 3) {
        gridSizeMenu.findItem(R.id.action_grid_size_3).setVisible(false);
    }
}

16 Source : LibraryFragment.java
with GNU General Public License v3.0
from MaxFour

private void setUpSortOrderMenu(@NonNull AbsLibraryPagerRecyclerViewCustomGridSizeFragment fragment, @NonNull SubMenu sortOrderMenu) {
    String currentSortOrder = fragment.getSortOrder();
    sortOrderMenu.clear();
    if (fragment instanceof AlbumsFragment) {
        sortOrderMenu.add(0, R.id.action_album_sort_order_asc, 0, R.string.sort_order_a_z).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_A_Z));
        sortOrderMenu.add(0, R.id.action_album_sort_order_desc, 1, R.string.sort_order_z_a).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_Z_A));
        sortOrderMenu.add(0, R.id.action_album_sort_order_artist, 2, R.string.sort_order_artist).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_ARTIST));
        sortOrderMenu.add(0, R.id.action_album_sort_order_year, 3, R.string.sort_order_year).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_YEAR));
    } else if (fragment instanceof ArtistsFragment) {
        sortOrderMenu.add(0, R.id.action_artist_sort_order_asc, 0, R.string.sort_order_a_z).setChecked(currentSortOrder.equals(SortOrder.ArtistSortOrder.ARTIST_A_Z));
        sortOrderMenu.add(0, R.id.action_artist_sort_order_desc, 1, R.string.sort_order_z_a).setChecked(currentSortOrder.equals(SortOrder.ArtistSortOrder.ARTIST_Z_A));
    } else if (fragment instanceof SongsFragment) {
        sortOrderMenu.add(0, R.id.action_song_sort_order_asc, 0, R.string.sort_order_a_z).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_A_Z));
        sortOrderMenu.add(0, R.id.action_song_sort_order_desc, 1, R.string.sort_order_z_a).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_Z_A));
        sortOrderMenu.add(0, R.id.action_song_sort_order_artist, 2, R.string.sort_order_artist).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_ARTIST));
        sortOrderMenu.add(0, R.id.action_song_sort_order_album, 3, R.string.sort_order_album).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_ALBUM));
        sortOrderMenu.add(0, R.id.action_song_sort_order_year, 4, R.string.sort_order_year).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_YEAR));
    }
    sortOrderMenu.setGroupCheckable(0, true, true);
}

16 Source : MainActivity.java
with Apache License 2.0
from jruesga

@SuppressLint("RestrictedApi")
private void updateAccountsDrawerInfo() {
    // Remove all accounts and re-add them
    final DrawerNavigationMenu menu = (DrawerNavigationMenu) mBinding.drawerNavigationView.getMenu();
    int otherAccountGroupIndex = menu.findGroupIndex(R.id.category_other_accounts);
    MenuItem group = menu.gereplacedem(otherAccountGroupIndex);
    SubMenu otherAccountsSubMenu = group.getSubMenu();
    int count = otherAccountsSubMenu.size() - 1;
    for (int i = count; i > 0; i--) {
        ((DrawerNavigationSubMenu) otherAccountsSubMenu).removeItemAt(i);
    }
    int i = 0;
    for (Account account : mAccounts) {
        // Current account
        if (mAccount.isSameAs(account)) {
            i++;
            continue;
        }
        int id = OTHER_ACCOUNTS_GROUP_BASE_ID + i;
        String replacedle = account.getAccountDisplayName() + DrawerNavigationView.SEPARATOR + account.getRepositoryDisplayName() + DrawerNavigationView.SEPARATOR + "ic_delete" + DrawerNavigationView.SEPARATOR + "false";
        MenuItem item = otherAccountsSubMenu.add(group.getGroupId(), id, Menu.NONE, replacedle);
        RviewImageHelper.bindAvatar(this, account, account.mAccount, item, RviewImageHelper.getDefaultAvatar(this, R.color.primaryDarkForeground));
        i++;
    }
    if (mAccount != null) {
        updateAccountStatus();
    }
}

16 Source : BookSourceActivity.java
with GNU General Public License v3.0
from Invinciblelee

/**
 * Created by GKF on 2017/12/16.
 * 书源管理
 */
public clreplaced BookSourceActivity extends MBaseActivity<BookSourceContract.Presenter> implements BookSourceContract.View {

    @BindView(R.id.toolbar)
    Toolbar toolbar;

    @BindView(R.id.rl_content)
    RelativeLayout rlContent;

    @BindView(R.id.recycler_view)
    RecyclerView recyclerView;

    @BindView(R.id.searchView)
    SearchView searchView;

    private MyItemTouchHelpCallback itemTouchHelpCallback;

    private boolean selectAll = true;

    private MenuItem groupItem;

    private SubMenu groupMenu;

    private SubMenu sortMenu;

    private BookSourceAdapter adapter;

    private ProgressDialog progressDialog;

    private SearchView.SearchAutoComplete mSearchAutoComplete;

    private boolean isSearch;

    private boolean hreplacedearchFocus;

    public static void startThis(Context context) {
        context.startActivity(new Intent(context, BookSourceActivity.clreplaced));
    }

    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        if (!hasFocus) {
            hreplacedearchFocus = searchView.hasFocus();
        }
        super.onWindowFocusChanged(hasFocus);
        if (hasFocus && !hreplacedearchFocus) {
            searchView.clearFocus();
        }
    }

    @Override
    protected BookSourceContract.Presenter initInjector() {
        return new BookSourcePresenterImpl();
    }

    @Override
    protected void onCreateActivity() {
        setContentView(R.layout.activity_book_source);
    }

    @Override
    protected void bindView() {
        ButterKnife.bind(this);
        initSearchView();
        initRecyclerView();
        mPresenter.initData();
    }

    private void initSearchView() {
        AppCompat.useCustomIconForSearchView(searchView, getResources().getString(R.string.search_book_source));
        mSearchAutoComplete = searchView.findViewById(R.id.search_src_text);
        searchView.onActionViewExpanded();
        searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {

            @Override
            public boolean onQueryTextSubmit(String query) {
                return false;
            }

            @Override
            public boolean onQueryTextChange(String newText) {
                isSearch = !TextUtils.isEmpty(newText);
                mPresenter.refresh();
                return false;
            }
        });
        searchView.post(() -> searchView.clearFocus());
    }

    private void initRecyclerView() {
        recyclerView.setLayoutManager(new LinearLayoutManager(this));
        adapter = new BookSourceAdapter(this);
        recyclerView.setAdapter(adapter);
        itemTouchHelpCallback = new MyItemTouchHelpCallback();
        itemTouchHelpCallback.setOnItemTouchCallbackListener(adapter.gereplacedemTouchCallbackListener());
        itemTouchHelpCallback.setDragEnable(true);
        ItemTouchHelper itemTouchHelper = new ItemTouchHelper(itemTouchHelpCallback);
        itemTouchHelper.attachToRecyclerView(recyclerView);
        setDragEnable(getPreferences().getInt("SourceSort", 0));
    }

    public void upDateSelectAll() {
        selectAll = true;
        for (BookSourceBean bookSourceBean : adapter.getDataList()) {
            if (!bookSourceBean.getEnable()) {
                selectAll = false;
                break;
            }
        }
    }

    private void selectAllDataS() {
        for (BookSourceBean bookSourceBean : adapter.getDataList()) {
            bookSourceBean.setEnable(!selectAll);
        }
        adapter.notifyDataSetChanged();
        selectAll = !selectAll;
        recyclerView.post(() -> saveDate(adapter.getDataList()));
    }

    private void setDragEnable(int sort) {
        if (itemTouchHelpCallback == null) {
            return;
        }
        if (sort == 0) {
            itemTouchHelpCallback.setDragEnable(true);
        } else {
            itemTouchHelpCallback.setDragEnable(false);
        }
        if (sort == 2) {
            adapter.setCanTop(false);
        } else {
            adapter.setCanTop(true);
        }
    }

    public void upSearchView(int size) {
        AppCompat.setQueryHintForSearchText(mSearchAutoComplete, getString(R.string.search_book_source_num, size));
    }

    @Override
    public void resetData(List<BookSourceBean> bookSourceBeans) {
        if (recyclerView == null || adapter == null)
            return;
        adapter.resetDataS(bookSourceBeans);
        upGroupMenu();
    }

    @Override
    public void upGroupMenu(List<String> groupList) {
        if (groupMenu == null)
            return;
        groupMenu.removeGroup(R.id.source_group);
        if (groupList.size() == 0) {
            groupItem.setVisible(false);
        } else {
            groupItem.setVisible(true);
            for (String groupName : groupList) {
                groupMenu.add(R.id.source_group, Menu.NONE, Menu.NONE, groupName);
            }
        }
    }

    @Override
    public void finish() {
        super.finish();
        RxBus.get().post(RxBusTag.SOURCE_LIST_CHANGE, true);
    }

    @Override
    public String getQuery() {
        return searchView.getQuery().toString();
    }

    public void delBookSource(BookSourceBean bookSource) {
        mPresenter.delData(bookSource);
    }

    public void saveDate(BookSourceBean date) {
        mPresenter.saveData(date);
    }

    public void saveDate(List<BookSourceBean> date) {
        mPresenter.saveData(date);
        supportInvalidateOptionsMenu();
    }

    @Override
    public void showLoading(String msg) {
        if (progressDialog == null) {
            progressDialog = ProgressDialog.show(this, msg);
        } else {
            progressDialog.setMessage(msg);
            progressDialog.show(this);
        }
    }

    @Override
    public void dismissHUD() {
        if (progressDialog != null && progressDialog.isShowing()) {
            progressDialog.dismiss();
        }
    }

    @Override
    protected View getSnackBarView() {
        return rlContent;
    }

    @Override
    protected void setupActionBar() {
        AppCompat.setToolbarNavIconTint(toolbar, getResources().getColor(R.color.colorBarText));
        this.setSupportActionBar(toolbar);
        ActionBar actionBar = getSupportActionBar();
        if (actionBar != null) {
            actionBar.setDisplayHomeAsUpEnabled(true);
            actionBar.setreplacedle(R.string.book_source_manage);
        }
    }

    // 添加菜单
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu_book_source_activity, menu);
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onPrepareOptionsMenu(Menu menu) {
        groupItem = menu.findItem(R.id.action_group);
        groupMenu = groupItem.getSubMenu();
        sortMenu = menu.findItem(R.id.action_sort).getSubMenu();
        upGroupMenu();
        upSortMenu();
        return super.onPrepareOptionsMenu(menu);
    }

    // 菜单
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.gereplacedemId();
        switch(id) {
            case R.id.action_add_book_source:
                addBookSource();
                break;
            case R.id.action_select_all:
                selectAllDataS();
                break;
            case R.id.action_import_book_source_local:
                selectBookSourceFile();
                break;
            case R.id.action_import_book_source_onLine:
                importBookSourceOnline();
                break;
            case R.id.action_del_select:
                new AlertDialog.Builder(getSupportFragmentManager()).setreplacedle(R.string.dialog_replacedle).setMessage(R.string.delete_book_source_s).setNegativeButton(R.string.cancel, null).setPositiveButton(R.string.ok, (dialog, which) -> mPresenter.delData(adapter.getSelectDataList())).show();
                break;
            case R.id.action_check_book_source:
                mPresenter.checkBookSource();
                break;
            case R.id.sort_manual:
                upSourceSort(0);
                break;
            case R.id.sort_auto:
                upSourceSort(1);
                break;
            case R.id.sort_ping_yin:
                upSourceSort(2);
                break;
            case android.R.id.home:
                finish();
                break;
        }
        if (item.getGroupId() == R.id.source_group) {
            searchView.setQuery(item.getreplacedle(), true);
        }
        return super.onOptionsItemSelected(item);
    }

    private void upGroupMenu() {
        mPresenter.refreshGroup();
    }

    private void upSortMenu() {
        sortMenu.gereplacedem(getPreferences().getInt("SourceSort", 0)).setChecked(true);
    }

    private void upSourceSort(int sort) {
        SharedPreferences.Editor editor = getPreferences().edit();
        editor.putInt("SourceSort", sort);
        editor.apply();
        upSortMenu();
        setDragEnable(sort);
        mPresenter.refresh();
    }

    private void addBookSource() {
        Intent intent = new Intent(this, SourceEditActivity.clreplaced);
        startActivityForResult(intent, SourceEditActivity.REQUEST_EDIT_SOURCE);
    }

    private void selectBookSourceFile() {
        new PermissionsCompat.Builder(this).addPermissions(Permissions.Group.STORAGE).rationale("存储").onGranted(requestCode -> resultImportPerms()).request();
    }

    private void importBookSourceOnline() {
        String cacheUrl = ACache.get(this).getreplacedtring("sourceUrl");
        InputDialog.show(getSupportFragmentManager(), "输入书源网址", cacheUrl, inputText -> {
            ACache.get(this).put("sourceUrl", inputText);
            mPresenter.importBookSource(inputText);
        });
    }

    private void resultImportPerms() {
        FileSelectorDialog.newInstance("选择文件", true, false, false, new String[] { "txt", "json", "xml" }).show(this, new FileSelectorDialog.OnFileSelectedListener() {

            @Override
            public void onSingleChoice(String path) {
                mPresenter.importBookSource(new File(path));
            }
        });
    }

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == SourceEditActivity.REQUEST_EDIT_SOURCE && resultCode == RESULT_OK) {
            mPresenter.refresh();
        }
    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            if (isSearch) {
                try {
                    // 如果搜索框中有文字,则会先清空文字.
                    mSearchAutoComplete.setText("");
                } catch (Exception ignore) {
                }
                return true;
            }
        }
        return super.onKeyDown(keyCode, event);
    }
}

16 Source : LibraryFragment.java
with GNU General Public License v3.0
from dkanada

private void setUpSortOrderMenu(@NonNull AbsLibraryPagerRecyclerViewCustomGridSizeFragment fragment, @NonNull SubMenu sortOrderMenu) {
    String currentSortOrder = fragment.getSortOrder();
    sortOrderMenu.clear();
    sortOrderMenu.add(0, R.id.action_sort_order_ascending, 0, R.string.sort_order_ascending).setChecked(currentSortOrder.equals(SortOrder.ASCENDING));
    sortOrderMenu.add(0, R.id.action_sort_order_descending, 1, R.string.sort_order_descending).setChecked(currentSortOrder.equals(SortOrder.DESCENDING));
    sortOrderMenu.setGroupCheckable(0, true, true);
}

16 Source : MainActivity.java
with GNU General Public License v3.0
from dh4

private void populateFavorites(Menu menu, List<Favorite> favorites) {
    SubMenu favMenu = menu.findItem(R.id.nav_favorites).getSubMenu();
    favMenu.clear();
    int i = 0;
    for (Favorite favorite : favorites) {
        favMenu.add(0, favorite.getUid(), i, favorite.getName());
        i++;
    }
}

16 Source : SliceBrowser.java
with Apache License 2.0
from androidx

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    mTypeMenu = menu.addSubMenu("Type");
    mTypeMenu.setIcon(R.drawable.ic_large);
    mTypeMenu.gereplacedem().setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    mTypeMenu.add("Shortcut");
    mTypeMenu.add("Small");
    mTypeMenu.add("Large");
    menu.add("Open");
    menu.add("Toggle scrolling");
    menu.add("Toggle serialized");
    SubMenu heightMenu = menu.addSubMenu("Set height");
    heightMenu.add("MATCH_PARENT");
    heightMenu.add("WRAP_CONTENT");
    heightMenu.add("Tiny");
    heightMenu.add("Big");
    menu.add("Limit actions");
    super.onCreateOptionsMenu(menu);
    return true;
}

16 Source : FontUtils.java
with MIT License
from androidmads

public void applyFontToMenu(Menu menu, Typeface typeface) {
    for (int i = 0; i < menu.size(); i++) {
        MenuItem menuItem = menu.gereplacedem(i);
        SubMenu subMenu = menuItem.getSubMenu();
        if (subMenu != null && subMenu.size() > 0) {
            for (int j = 0; j < subMenu.size(); j++) {
                MenuItem subMenuItem = subMenu.gereplacedem(j);
                applyFontToMenuItem(subMenuItem, typeface);
            }
        }
        applyFontToMenuItem(menuItem, typeface);
    }
}

16 Source : LibraryFragment.java
with GNU General Public License v3.0
from AdrienPoupa

private void setUpSortOrderMenu(@NonNull AbsLibraryPagerRecyclerViewCustomGridSizeFragment fragment, @NonNull SubMenu sortOrderMenu) {
    String currentSortOrder = fragment.getSortOrder();
    sortOrderMenu.clear();
    if (fragment instanceof AlbumsFragment) {
        sortOrderMenu.add(0, R.id.action_album_sort_order_asc, 0, R.string.sort_order_a_z).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_A_Z));
        sortOrderMenu.add(0, R.id.action_album_sort_order_desc, 1, R.string.sort_order_z_a).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_Z_A));
        sortOrderMenu.add(0, R.id.action_album_sort_order_artist, 2, R.string.sort_order_artist).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_ARTIST));
        sortOrderMenu.add(0, R.id.action_album_sort_order_year, 3, R.string.sort_order_year).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_YEAR_REVERSE));
        sortOrderMenu.add(0, R.id.action_album_sort_order_date_added, 4, R.string.sort_order_date_added).setChecked(currentSortOrder.equals(SortOrder.AlbumSortOrder.ALBUM_DATE_ADDED_REVERSE));
    } else if (fragment instanceof ArtistsFragment) {
        sortOrderMenu.add(0, R.id.action_artist_sort_order_asc, 0, R.string.sort_order_a_z).setChecked(currentSortOrder.equals(SortOrder.ArtistSortOrder.ARTIST_A_Z));
        sortOrderMenu.add(0, R.id.action_artist_sort_order_desc, 1, R.string.sort_order_z_a).setChecked(currentSortOrder.equals(SortOrder.ArtistSortOrder.ARTIST_Z_A));
    } else if (fragment instanceof SongsFragment) {
        sortOrderMenu.add(0, R.id.action_song_sort_order_asc, 0, R.string.sort_order_a_z).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_A_Z));
        sortOrderMenu.add(0, R.id.action_song_sort_order_desc, 1, R.string.sort_order_z_a).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_Z_A));
        sortOrderMenu.add(0, R.id.action_song_sort_order_artist, 2, R.string.sort_order_artist).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_ARTIST));
        sortOrderMenu.add(0, R.id.action_song_sort_order_album, 3, R.string.sort_order_album).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_ALBUM));
        sortOrderMenu.add(0, R.id.action_song_sort_order_year, 4, R.string.sort_order_year).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_YEAR_REVERSE));
        sortOrderMenu.add(0, R.id.action_song_sort_order_date_added, 5, R.string.sort_order_date_added).setChecked(currentSortOrder.equals(SortOrder.SongSortOrder.SONG_DATE_ADDED_REVERSE));
    }
    sortOrderMenu.setGroupCheckable(0, true, true);
}

16 Source : UartBaseFragment.java
with MIT License
from adafruit

@Override
public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) {
    super.onCreateOptionsMenu(menu, inflater);
    inflater.inflate(R.menu.menu_uart, menu);
    // Mqtt
    mMqttMenuItem = menu.findItem(R.id.action_mqttsettings);
    mMqttMenuItemAnimationHandler = new Handler();
    mMqttMenuItemAnimationRunnable.run();
    // DisplayMode
    MenuItem displayModeMenuItem = menu.findItem(R.id.action_displaymode);
    displayModeMenuItem.setreplacedle(String.format("%s: %s", getString(R.string.uart_settings_displayMode_replacedle), getString(mIsTimestampDisplayMode ? R.string.uart_settings_displayMode_timestamp : R.string.uart_settings_displayMode_text)));
    SubMenu displayModeSubMenu = displayModeMenuItem.getSubMenu();
    if (mIsTimestampDisplayMode) {
        MenuItem displayModeTimestampMenuItem = displayModeSubMenu.findItem(R.id.action_displaymode_timestamp);
        displayModeTimestampMenuItem.setChecked(true);
    } else {
        MenuItem displayModeTextMenuItem = displayModeSubMenu.findItem(R.id.action_displaymode_text);
        displayModeTextMenuItem.setChecked(true);
    }
    // DataMode
    MenuItem dataModeMenuItem = menu.findItem(R.id.action_datamode);
    dataModeMenuItem.setreplacedle(String.format("%s: %s", getString(R.string.uart_settings_dataMode_replacedle), getString(mShowDataInHexFormat ? R.string.uart_settings_dataMode_hex : R.string.uart_settings_dataMode_ascii)));
    SubMenu dataModeSubMenu = dataModeMenuItem.getSubMenu();
    if (mShowDataInHexFormat) {
        MenuItem dataModeHexMenuItem = dataModeSubMenu.findItem(R.id.action_datamode_hex);
        dataModeHexMenuItem.setChecked(true);
    } else {
        MenuItem dataModeAsciiMenuItem = dataModeSubMenu.findItem(R.id.action_datamode_ascii);
        dataModeAsciiMenuItem.setChecked(true);
    }
    // Echo
    MenuItem echoMenuItem = menu.findItem(R.id.action_echo);
    echoMenuItem.setreplacedle(R.string.uart_settings_echo_replacedle);
    echoMenuItem.setChecked(mIsEchoEnabled);
    // Eol
    MenuItem eolMenuItem = menu.findItem(R.id.action_eol);
    eolMenuItem.setreplacedle(R.string.uart_settings_eol_replacedle);
    eolMenuItem.setChecked(mIsEolEnabled);
    // Eol Characters
    MenuItem eolModeMenuItem = menu.findItem(R.id.action_eolmode);
    eolModeMenuItem.setreplacedle(String.format("%s: %s", getString(R.string.uart_settings_eolCharacters_replacedle), getString(getEolCharactersStringId())));
    SubMenu eolModeSubMenu = eolModeMenuItem.getSubMenu();
    int selectedEolCharactersSubMenuId;
    switch(mEolCharactersId) {
        case 1:
            selectedEolCharactersSubMenuId = R.id.action_eolmode_r;
            break;
        case 2:
            selectedEolCharactersSubMenuId = R.id.action_eolmode_nr;
            break;
        case 3:
            selectedEolCharactersSubMenuId = R.id.action_eolmode_rn;
            break;
        default:
            selectedEolCharactersSubMenuId = R.id.action_eolmode_n;
            break;
    }
    MenuItem selectedEolCharacterMenuItem = eolModeSubMenu.findItem(selectedEolCharactersSubMenuId);
    selectedEolCharacterMenuItem.setChecked(true);
}

15 Source : MenuUtils.java
with Mozilla Public License 2.0
from tzz2015

public static void setMenuIconColor(Menu menu, int color) {
    for (int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.gereplacedem(i);
        Drawable icon = item.getIcon();
        if (icon != null) {
            DrawableCompat.setTint(icon, color);
        }
        SubMenu subMenu = item.getSubMenu();
        if (subMenu != null) {
            setMenuIconColor(subMenu, color);
        }
    }
}

15 Source : MainActivity.java
with Apache License 2.0
from powerpoint45

public void setSubscriptions(final ArrayList<Person> persons) {
    runOnUiThread(() -> {
        Menu m = navigationView.getMenu();
        m.removeItem(R.id.subscriptions_id);
        SubMenu topChannelMenu = m.addSubMenu(0, R.id.subscriptions_id, 0, getResources().getString(R.string.subscriptions) + " (" + persons.size() + ")");
        for (int i = 0; i < persons.size(); i++) {
            topChannelMenu.add(0, R.id.subscription_id, 0, persons.get(i).userName);
            CustomMenuTarget target = new CustomMenuTarget(topChannelMenu.gereplacedem(i), MainActivity.this, targets);
            targets.add(target);
            Picreplacedo.get().load(DtubeAPI.PROFILE_IMAGE_SMALL_URL.replace("username", persons.get(i).userName)).into(target);
        }
    });
}

15 Source : MasterObjectListFragment.java
with GNU General Public License v3.0
from patzly

public void setUpBottomMenu() {
    // sorting
    MenuItem itemSort = activity.getBottomMenu().findItem(R.id.action_sort_ascending);
    itemSort.setIcon(viewModel.isSortAscending() ? R.drawable.ic_round_sort_desc_to_asc_anim : R.drawable.ic_round_sort_asc_to_desc);
    itemSort.getIcon().setAlpha(255);
    itemSort.setOnMenuItemClickListener(item -> {
        viewModel.setSortAscending(!viewModel.isSortAscending());
        item.setIcon(viewModel.isSortAscending() ? R.drawable.ic_round_sort_asc_to_desc : R.drawable.ic_round_sort_desc_to_asc_anim);
        item.getIcon().setAlpha(255);
        IconUtil.start(item);
        return true;
    });
    // search
    MenuItem search = activity.getBottomMenu().findItem(R.id.action_search);
    if (search == null)
        return;
    search.setOnMenuItemClickListener(item -> {
        IconUtil.start(item);
        setUpSearch();
        return true;
    });
    // product group filter
    if (enreplacedy.equals(GrocyApi.ENreplacedY.PRODUCTS)) {
        MenuItem menuItem = activity.getBottomMenu().findItem(R.id.action_filter);
        if (menuItem == null)
            return;
        SubMenu menuProductGroups = menuItem.getSubMenu();
        menuProductGroups.clear();
        ArrayList<ProductGroup> productGroups = viewModel.getProductGroups();
        if (productGroups != null && !productGroups.isEmpty()) {
            ArrayList<ProductGroup> sorted = new ArrayList<>(productGroups);
            SortUtil.sortProductGroupsByName(sorted, true);
            for (ProductGroup pg : sorted) {
                menuProductGroups.add(pg.getName()).setOnMenuItemClickListener(item -> {
                    // filterProductGroup(productGroup); TODO
                    return true;
                });
            }
            menuItem.setVisible(true);
        } else {
            menuItem.setVisible(false);
        }
    }
}

15 Source : MainActivity.java
with GNU General Public License v3.0
from devgianlu

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    SubMenu sortingMenu = menu.findItem(R.id.main_sort).getSubMenu();
    if (sortingMenu != null) {
        sortingMenu.setGroupCheckable(0, true, true);
        DownloadCardsAdapter.SortBy sorting = DownloadCardsAdapter.SortBy.valueOf(Prefs.getString(PK.A2_MAIN_SORTING));
        MenuItem item;
        switch(sorting) {
            case NAME:
                item = sortingMenu.findItem(R.id.mainSort_name);
                break;
            default:
            case STATUS:
                item = sortingMenu.findItem(R.id.mainSort_status);
                break;
            case PROGRESS:
                item = sortingMenu.findItem(R.id.mainSort_progress);
                break;
            case DOWNLOAD_SPEED:
                item = sortingMenu.findItem(R.id.mainSort_downloadSpeed);
                break;
            case UPLOAD_SPEED:
                item = sortingMenu.findItem(R.id.mainSort_uploadSpeed);
                break;
            case COMPLETED_LENGTH:
                item = sortingMenu.findItem(R.id.mainSort_completedLength);
                break;
            case LENGTH:
                item = sortingMenu.findItem(R.id.mainSort_length);
                break;
        }
        item.setChecked(true);
    }
    return true;
}

14 Source : JavaMenuManager.java
with GNU General Public License v3.0
from tranleduy2000

public void createFileMenu(SubMenu menu) {
    // hide create new file menu
    menu.removeItem(R.id.action_new_file);
    menu.removeItem(R.id.action_open);
    ArrayList<MenuItem> oldMenuItems = new ArrayList<>();
    for (int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.gereplacedem(i);
        oldMenuItems.add(item);
    }
    menu.clear();
    int[] newMenuIds = new int[] { R.id.action_new_java_project, R.string.new_java_project, R.drawable.ic_create_new_folder_white_24dp, R.id.action_new_android_project, R.string.new_android_project, R.drawable.ic_create_new_folder_white_24dp, R.id.action_new_clreplaced, R.string.new_clreplaced, R.drawable.ic_create_new_folder_white_24dp, R.id.action_new_file, R.string.new_file, R.drawable.ic_fiber_new_white_24dp };
    int[] openMenuIds = new int[] { R.id.action_open_java_project, R.string.open_java_project, R.drawable.ic_folder_open_white_24dp, R.id.action_open_android_project, R.string.open_android_project, R.drawable.ic_folder_open_white_24dp };
    addToMenu(menu, R.drawable.ic_create_new_folder_white_24dp, R.string.replacedle_menu_new, newMenuIds);
    addToMenu(menu, R.drawable.baseline_folder_open_24, R.string.replacedle_menu_open, openMenuIds);
    // restore, make it bottom
    for (MenuItem item : oldMenuItems) {
        menu.add(item.getGroupId(), item.gereplacedemId(), item.getOrder(), item.getreplacedle()).setIcon(item.getIcon());
    }
}

14 Source : ShareActionProvider.java
with MIT License
from RikkaApps

/**
 * {@inheritDoc}
 */
@Override
public void onPrepareSubMenu(SubMenu subMenu) {
    // Clear since the order of items may change.
    subMenu.clear();
    ActivityChooserModel dataModel = ActivityChooserModel.get(mContext, mShareHistoryFileName);
    PackageManager packageManager = mContext.getPackageManager();
    final int expandedActivityCount = dataModel.getActivityCount();
    final int collapsedActivityCount = Math.min(expandedActivityCount, mMaxShownActivityCount);
    // Populate the sub-menu with a sub set of the activities.
    for (int i = 0; i < collapsedActivityCount; i++) {
        ResolveInfo activity = dataModel.getActivity(i);
        subMenu.add(0, i, i, activity.loadLabel(packageManager)).setIcon(activity.loadIcon(packageManager)).setOnMenuItemClickListener(mOnMenuItemClickListener);
    }
    if (collapsedActivityCount < expandedActivityCount) {
        // Add a sub-menu for showing all activities as a list item.
        SubMenu expandedSubMenu = subMenu.addSubMenu(Menu.NONE, collapsedActivityCount, collapsedActivityCount, mContext.getString(R.string.abc_activity_chooser_view_see_all));
        for (int i = 0; i < expandedActivityCount; i++) {
            ResolveInfo activity = dataModel.getActivity(i);
            expandedSubMenu.add(0, i, i, activity.loadLabel(packageManager)).setIcon(activity.loadIcon(packageManager)).setOnMenuItemClickListener(mOnMenuItemClickListener);
        }
    }
}

See More Examples