Ejemplo n.º 1
0
        public override void updateMenuView(bool cleared)
        {
            base.updateMenuView(cleared);
            if (mMenu != null)
            {
                java.util.ArrayList <*****@*****.**> actionItems = mMenu
                                                                                             .getActionItems();
                int count = actionItems.size();
                {
                    for (int i = 0; i < count; i++)
                    {
                        android.view.ActionProvider provider = actionItems.get(i).getActionProvider();
                        if (provider != null)
                        {
                            provider.setSubUiVisibilityListener(this);
                        }
                    }
                }
            }
            java.util.ArrayList <*****@*****.**> nonActionItems = mMenu
                                                                                            != null?mMenu.getNonActionItems() : null;

            bool hasOverflow = false;

            if (mReserveOverflow && nonActionItems != null)
            {
                int count = nonActionItems.size();
                if (count == 1)
                {
                    hasOverflow = !nonActionItems.get(0).isActionViewExpanded();
                }
                else
                {
                    hasOverflow = count > 0;
                }
            }
            if (hasOverflow)
            {
                if (mOverflowButton == null)
                {
                    mOverflowButton = new android.view.@internal.menu.ActionMenuPresenter.OverflowMenuButton
                                          (this, mSystemContext);
                }
                android.view.ViewGroup parent = (android.view.ViewGroup)mOverflowButton.getParent
                                                    ();
                if (parent != mMenuView)
                {
                    if (parent != null)
                    {
                        parent.removeView(mOverflowButton);
                    }
                    [email protected] menuView = ([email protected]
                                                                           )mMenuView;
                    menuView.addView(mOverflowButton, menuView.generateOverflowButtonLayoutParams());
                }
            }
            else
            {
                if (mOverflowButton != null && mOverflowButton.getParent() == mMenuView)
                {
                    ((android.view.ViewGroup)mMenuView).removeView(mOverflowButton);
                }
            }
            (([email protected])mMenuView).setOverflowReserved(mReserveOverflow
                                                                                        );
        }