Example usage for android.support.v4.view MenuItem setChecked

List of usage examples for android.support.v4.view MenuItem setChecked

Introduction

In this page you can find the example usage for android.support.v4.view MenuItem setChecked.

Prototype

@Override
    MenuItem setChecked(boolean checked);

Source Link

Usage

From source file:com.actionbarsherlock.sample.styledactionbar.MainActivity.java

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
    case android.R.id.home:
        // TODO handle clicking the app icon/logo
        return false;
    case R.id.menu_refresh:
        // switch to a progress animation
        item.setActionView(R.layout.indeterminate_progress_action);
        return true;
    case R.id.menu_both:
        // rotation animation of green fragment
        rotateLeftFrag();// www.  ja  v a  2  s. co m
    case R.id.menu_text:
        // alpha animation of blue fragment
        if (IS_HONEYCOMB) {
            ObjectAnimatorAlpha.invoke(rightFrag.getView());
        } else {
            AlphaAnimation alpha = new AlphaAnimation(1f, 0f);
            alpha.setRepeatMode(Animation.REVERSE);
            alpha.setRepeatCount(1);
            alpha.setDuration(800);
            rightFrag.getView().startAnimation(alpha);
        }
        return true;
    case R.id.menu_logo:
        useLogo = !useLogo;
        item.setChecked(useLogo);
        getSupportActionBar().setDisplayUseLogoEnabled(useLogo);
        return true;
    case R.id.menu_up:
        showHomeUp = !showHomeUp;
        item.setChecked(showHomeUp);
        getSupportActionBar().setDisplayHomeAsUpEnabled(showHomeUp);
        return true;
    case R.id.menu_nav_tabs:
        item.setChecked(true);
        showTabsNav();
        return true;
    case R.id.menu_nav_label:
        item.setChecked(true);
        showStandardNav();
        return true;
    case R.id.menu_nav_drop_down:
        item.setChecked(true);
        showDropDownNav();
        return true;
    case R.id.menu_bak_none:
        item.setChecked(true);
        getSupportActionBar().setBackgroundDrawable(null);
        return true;
    case R.id.menu_bak_gradient:
        item.setChecked(true);
        getSupportActionBar()
                .setBackgroundDrawable(getResources().getDrawable(R.drawable.ad_action_bar_gradient_bak));
        return true;
    default:
        return super.onOptionsItemSelected(item);
    }
}

From source file:com.actionbarsherlock.internal.view.menu.MenuBuilder.java

/** Bind the non-action items to a native menu. */
public boolean bindOverflowToNative(android.view.Menu menu,
        android.view.MenuItem.OnMenuItemClickListener listener,
        HashMap<android.view.MenuItem, MenuItemImpl> map) {
    final ArrayList<MenuItemImpl> nonActionItems = getNonActionItems();
    if (nonActionItems == null || nonActionItems.size() == 0) {
        return false;
    }/*www  .java 2  s .  c o m*/

    menu.clear();
    boolean visible = false;
    for (MenuItemImpl nonActionItem : nonActionItems) {
        if (nonActionItem.isVisible()) {
            visible = true;

            android.view.MenuItem nativeItem;
            if (nonActionItem.hasSubMenu()) {
                android.view.SubMenu nativeSub = menu.addSubMenu(nonActionItem.getGroupId(),
                        nonActionItem.getItemId(), nonActionItem.getOrder(), nonActionItem.getTitle());

                SubMenuBuilder subMenu = (SubMenuBuilder) nonActionItem.getSubMenu();
                for (MenuItemImpl subItem : subMenu.getVisibleItems()) {
                    android.view.MenuItem nativeSubItem = nativeSub.add(subItem.getGroupId(),
                            subItem.getItemId(), subItem.getOrder(), subItem.getTitle());

                    nativeSubItem.setIcon(subItem.getIcon());
                    nativeSubItem.setOnMenuItemClickListener(listener);
                    nativeSubItem.setEnabled(subItem.isEnabled());
                    nativeSubItem.setIntent(subItem.getIntent());
                    nativeSubItem.setNumericShortcut(subItem.getNumericShortcut());
                    nativeSubItem.setAlphabeticShortcut(subItem.getAlphabeticShortcut());
                    nativeSubItem.setTitleCondensed(subItem.getTitleCondensed());
                    nativeSubItem.setCheckable(subItem.isCheckable());
                    nativeSubItem.setChecked(subItem.isChecked());

                    if (subItem.isExclusiveCheckable()) {
                        nativeSub.setGroupCheckable(subItem.getGroupId(), true, true);
                    }

                    map.put(nativeSubItem, subItem);
                }

                nativeItem = nativeSub.getItem();
            } else {
                nativeItem = menu.add(nonActionItem.getGroupId(), nonActionItem.getItemId(),
                        nonActionItem.getOrder(), nonActionItem.getTitle());
            }
            nativeItem.setIcon(nonActionItem.getIcon());
            nativeItem.setOnMenuItemClickListener(listener);
            nativeItem.setEnabled(nonActionItem.isEnabled());
            nativeItem.setIntent(nonActionItem.getIntent());
            nativeItem.setNumericShortcut(nonActionItem.getNumericShortcut());
            nativeItem.setAlphabeticShortcut(nonActionItem.getAlphabeticShortcut());
            nativeItem.setTitleCondensed(nonActionItem.getTitleCondensed());
            nativeItem.setCheckable(nonActionItem.isCheckable());
            nativeItem.setChecked(nonActionItem.isChecked());

            if (nonActionItem.isExclusiveCheckable()) {
                menu.setGroupCheckable(nonActionItem.getGroupId(), true, true);
            }

            map.put(nativeItem, nonActionItem);
        }
    }

    return visible;
}