public override void onPrepareSubMenu(android.view.SubMenu subMenu) { // Clear since the order of items may change. subMenu.clear(); android.widget.ActivityChooserModel dataModel = android.widget.ActivityChooserModel .get(mContext, mShareHistoryFileName); android.content.pm.PackageManager packageManager = mContext.getPackageManager(); int expandedActivityCount = dataModel.getActivityCount(); int collapsedActivityCount = System.Math.Min(expandedActivityCount, mMaxShownActivityCount ); { // Populate the sub-menu with a sub set of the activities. for (int i = 0; i < collapsedActivityCount; i++) { android.content.pm.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. android.view.SubMenu expandedSubMenu = subMenu.addSubMenu(android.view.MenuClass.NONE , collapsedActivityCount, collapsedActivityCount, java.lang.CharSequenceProxy.Wrap (mContext.getString([email protected][email protected]_chooser_view_see_all))); { for (int i_1 = 0; i_1 < expandedActivityCount; i_1++) { android.content.pm.ResolveInfo activity = dataModel.getActivity(i_1); expandedSubMenu.add(0, i_1, i_1, activity.loadLabel(packageManager)).setIcon(activity .loadIcon(packageManager)).setOnMenuItemClickListener(mOnMenuItemClickListener); } } } }
/// <summary>Called to prepare an associated submenu for the menu item backed by this ActionProvider. /// </summary> /// <remarks> /// Called to prepare an associated submenu for the menu item backed by this ActionProvider. /// <p>if /// <see cref="hasSubMenu()">hasSubMenu()</see> /// 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. /// </remarks> /// <param name="subMenu">Submenu that will be displayed</param> public virtual void onPrepareSubMenu(android.view.SubMenu subMenu) { }