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

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

源代码1 项目: AndroidSweetSheet   文件: SweetSheet.java
/**
 * 当前只处理一级的菜单
 *
 * @param menu
 * @return
 */
private List<MenuEntity> getMenuEntityFormMenuRes(Menu menu) {

    List<MenuEntity> list = new ArrayList<>();
    for (int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.getItem(i);

        if (item.isVisible()) {
            MenuEntity itemEntity = new MenuEntity();
            itemEntity.title = item.getTitle().toString();
            itemEntity.icon = item.getIcon();
            list.add(itemEntity);
        }
    }
    return list;
}
 
@UiThreadTest
@Test
@SmallTest
@SdkSuppress(minSdkVersion = Build.VERSION_CODES.N)
@TargetApi(Build.VERSION_CODES.N)
public void testPointerIcon() throws Throwable {
  final Activity activity = activityTestRule.getActivity();
  final PointerIcon expectedIcon = PointerIcon.getSystemIcon(activity, PointerIcon.TYPE_HAND);
  final MotionEvent event = MotionEvent.obtain(0, 0, MotionEvent.ACTION_HOVER_MOVE, 0, 0, 0);
  final Menu menu = bottomNavigation.getMenu();
  for (int i = 0; i < menu.size(); i++) {
    final MenuItem item = menu.getItem(i);
    assertTrue(item.isEnabled());
    final View itemView = activity.findViewById(item.getItemId());
    assertEquals(expectedIcon, itemView.onResolvePointerIcon(event, 0));
    item.setEnabled(false);
    assertEquals(null, itemView.onResolvePointerIcon(event, 0));
    item.setEnabled(true);
    assertEquals(expectedIcon, itemView.onResolvePointerIcon(event, 0));
  }
}
 
源代码3 项目: Plumble   文件: PlumbleActivity.java
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    MenuItem disconnectButton = menu.findItem(R.id.action_disconnect);
    disconnectButton.setVisible(mService != null && mService.isConnected());

    // Color the action bar icons to the primary text color of the theme.
    int foregroundColor = getSupportActionBar().getThemedContext()
            .obtainStyledAttributes(new int[] { android.R.attr.textColor })
            .getColor(0, -1);
    for(int x=0;x<menu.size();x++) {
        MenuItem item = menu.getItem(x);
        if(item.getIcon() != null) {
            Drawable icon = item.getIcon().mutate(); // Mutate the icon so that the color filter is exclusive to the action bar
            icon.setColorFilter(foregroundColor, PorterDuff.Mode.MULTIPLY);
        }
    }

    return super.onPrepareOptionsMenu(menu);
}
 
源代码4 项目: BotLibre   文件: ViewUserActivity.java
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
       for (int index = 0; index < menu.size(); index++) {
   	    menu.getItem(index).setEnabled(true);        	
       }
       if (MainActivity.user == null || MainActivity.user == MainActivity.viewUser) {
   	    MenuItem item = menu.findItem(R.id.menuFlag);
   	    if (item != null) {
   	    	item.setEnabled(false);
   	    }
       }
       if (MainActivity.user != MainActivity.viewUser) {
   	    menu.findItem(R.id.menuChangeIcon).setEnabled(false);
   	    menu.findItem(R.id.menuEditUser).setEnabled(false);
       }
    return true;
}
 
源代码5 项目: mollyim-android   文件: AdaptiveActionsToolbar.java
public static void adjustMenuActions(@NonNull Menu menu, int maxToShow, int toolbarWidthPx) {
  int menuSize = 0;

  for (int i = 0; i < menu.size(); i++) {
    if (menu.getItem(i).isVisible()) {
      menuSize++;
    }
  }

  int widthAllowed = toolbarWidthPx - ViewUtil.dpToPx(NAVIGATION_DP);
  int nItemsToShow = Math.min(maxToShow, widthAllowed / ViewUtil.dpToPx(ACTION_VIEW_WIDTH_DP));

  if (nItemsToShow < menuSize) {
    widthAllowed -= ViewUtil.dpToPx(OVERFLOW_VIEW_WIDTH_DP);
  }

  nItemsToShow = Math.min(maxToShow, widthAllowed / ViewUtil.dpToPx(ACTION_VIEW_WIDTH_DP));

  for (int i = 0; i < menu.size(); i++) {
    MenuItem item = menu.getItem(i);
    if (item.isVisible() && nItemsToShow > 0) {
      item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
      nItemsToShow--;
    } else {
      item.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
    }
  }
}
 
private static void setOnMenuItemClickListenerRecursive(Menu menu, OnMenuItemClickListener listener) {
    List<Menu> menus = new ArrayList<>(1);
    menus.add(menu);
    while (!menus.isEmpty()) {
        final Menu currentMenu = menus.remove(0);
        for (int i = 0; i < currentMenu.size(); ++i) {
            final MenuItem item = currentMenu.getItem(i);
            item.setOnMenuItemClickListener(listener);
            final SubMenu subMenu = item.getSubMenu();
            if (subMenu != null)
                menus.add(subMenu);
        }
    }
}
 
源代码7 项目: HaoReader   文件: AudioBookPlayActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_audio_play_activity, menu);
    for (int i = 0; i < menu.size(); i++) {
        MenuItemImpl item = (MenuItemImpl) menu.getItem(i);
        AppCompat.setTint(item, getResources().getColor(R.color.white));
    }
    return true;
}
 
源代码8 项目: Passbook   文件: MainActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(getResources().getBoolean(R.bool.hide_drawer) ?
            R.menu.menu_home_small : R.menu.menu_home_large, menu);
    for(int i = 0; i < menu.size(); ++i) {
        menu.getItem(i).getIcon().setColorFilter(
                C.ThemedColors[C.colorTextNormal], PorterDuff.Mode.SRC_ATOP);
    }
    SearchView searchView = (SearchView)menu.findItem(R.id.action_search).getActionView();
    searchView.setQueryHint(getString(R.string.search));
    searchView.setOnQueryTextListener(this);
    return true;
}
 
源代码9 项目: FloatingSearchView   文件: FloatingSearchView.java
private void showMenu(final boolean visible) {
    Menu menu = getMenu();
    for(int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.getItem(i);
        if(mAlwaysShowingMenu.contains(item.getItemId())) continue;
        item.setVisible(visible);
    }
}
 
源代码10 项目: Cashew   文件: BottomNavigationViewEx.java
MyOnNavigationItemSelectedListener(ViewPager viewPager, BottomNavigationViewEx bnve, boolean smoothScroll, OnNavigationItemSelectedListener listener) {
    this.viewPagerRef = new WeakReference<>(viewPager);
    this.listener = listener;
    this.smoothScroll = smoothScroll;

    // create items
    Menu menu = bnve.getMenu();
    int size = menu.size();
    items = new SparseIntArray(size);
    for (int i = 0; i < size; i++) {
        int itemId = menu.getItem(i).getItemId();
        items.put(itemId, i);
    }
}
 
源代码11 项目: playa   文件: BottomNavigationViewEx.java
/**
 * get menu item position in menu
 *
 * @param item
 * @return position if success, -1 otherwise
 */
public int getMenuItemPosition(MenuItem item) {
    // get item id
    int itemId = item.getItemId();
    // get meunu
    Menu menu = getMenu();
    int size = menu.size();
    for (int i = 0; i < size; i++) {
        if (menu.getItem(i).getItemId() == itemId) {
            return i;
        }
    }
    return -1;
}
 
源代码12 项目: loaned-android   文件: LoansByItemFragment.java
@Override
public void onCreateOptionsMenu(Menu menu,MenuInflater inf){
	super.onCreateOptionsMenu(menu, inf);
       // Check if the menu already has items in it.
       // Otherwise we could cause a duplicate menu item issue.
       if(menu.size()==0)inf.inflate(R.menu.loanslist, menu);
}
 
源代码13 项目: Stringlate   文件: ContextUtils.java
/**
 * Try to tint all {@link Menu}s {@link MenuItem}s with given color
 */
@SuppressWarnings("ConstantConditions")
public void tintMenuItems(Menu menu, boolean recurse, @ColorInt int iconColor) {
    for (int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.getItem(i);
        tintDrawable(item.getIcon(), iconColor);
        if (item.hasSubMenu() && recurse) {
            tintMenuItems(item.getSubMenu(), recurse, iconColor);
        }
    }
}
 
源代码14 项目: android_gisapp   文件: FullCompassFragment.java
@Override
public void onPrepareOptionsMenu(Menu menu)
{
    for (int i = 0; i < menu.size(); i++) {
        MenuItem item = menu.getItem(i);
        if (item.getItemId() == R.id.menu_about || item.getItemId() == R.id.menu_settings) {
            continue;
        }
        item.setVisible(false);
    }
    super.onPrepareOptionsMenu(menu);
}
 
源代码15 项目: udacity-p1-p2-popular-movies   文件: AppUtil.java
private static void tintMenuItems(@Nullable Menu menu, @ColorInt int color) {
    if (menu == null) {
        return;
    }
    for (int i = 0; i < menu.size(); ++i) {
        MenuItem menuItem = menu.getItem(i);
        if (menuItem != null && menuItem.getIcon() != null) {
            tintDrawable(menuItem.getIcon(), color);
        }
    }
}
 
源代码16 项目: android-md-core   文件: MdCompat.java
public static void supportDrawableTint(Context context, Menu menu, Palette palette) {
  if (menu != null) {
    int i = 0;
    for (int n = menu.size(); i < n; i++) {
      supportDrawableTint(context, menu.getItem(i), palette);
    }
  }
}
 
@Override
public Object onMessage(String id, Object data)
{
	if("onCreateOptionsMenu".equals(id) || "onPrepareOptionsMenu".equals(id))
	{
		menu = (Menu)data;

		if(menu_definition != null && menu.size() != menu_definition.length())
		{
			menu.clear();
			menu_callbacks.clear();
			buildMenu(menu, menu_definition);
		}
	}
	else if("onOptionsItemSelected".equals(id))
	{
		MenuItem item = (MenuItem)data;
		if(item.getItemId() == android.R.id.home)
		{
			webView.sendJavascript("if(window.plugins.actionbar.home_callback) window.plugins.actionbar.home_callback();");
		}
		else if(menu_callbacks.containsKey(item))
		{
			final String callback = menu_callbacks.get(item);
			webView.sendJavascript(callback);
		}
	}
	
	return null;
}
 
源代码18 项目: loaned-android   文件: LoansByPersonFragment.java
@Override
public void onCreateOptionsMenu(Menu menu,MenuInflater inf){
	super.onCreateOptionsMenu(menu, inf);
       // Check if the menu already has items in it.
       // Otherwise we could cause a duplicate menu item issue.
       if(menu.size()==0)inf.inflate(R.menu.loanslist, menu);
}
 
源代码19 项目: GankMeizhi   文件: WebViewActivity.java
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    MenuItem item;
    for (int i = 0; i < menu.size(); i++) {
        item = menu.getItem(i);
        Drawable drawable = item.getIcon();
        drawable.setColorFilter(Color.WHITE, PorterDuff.Mode.SRC_IN);
        item.setIcon(drawable);
        if (item.getItemId() == R.id.action_favorite) {
            changeFavoriteIcon(item, favorite.favorites, objectId);
        }
    }

    return super.onPrepareOptionsMenu(menu);
}
 
源代码20 项目: datmusic-android   文件: BaseActivity.java
@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    for (int i = 0; i < menu.size(); i++)
        menu.getItem(i).setVisible(!shouldGoInvisible);
    return super.onPrepareOptionsMenu(menu);
}