Beispiel #1
0
  /**
   * Shows "call via" menu allowing user to selected from multiple providers.
   *
   * @param context the android context
   * @param v the View that will contain the popup menu.
   * @param destination target callee name.
   */
  private static void showCallViaMenu(final Context context, View v, final String destination) {
    PopupMenu popup = new PopupMenu(context, v);

    Menu menu = popup.getMenu();

    Iterator<ProtocolProviderService> registeredProviders =
        AccountUtils.getRegisteredProviders().iterator();

    while (registeredProviders.hasNext()) {
      final ProtocolProviderService provider = registeredProviders.next();
      String accountAddress = provider.getAccountID().getAccountAddress();

      MenuItem menuItem = menu.add(Menu.NONE, Menu.NONE, Menu.NONE, accountAddress);

      menuItem.setOnMenuItemClickListener(
          new MenuItem.OnMenuItemClickListener() {
            public boolean onMenuItemClick(MenuItem item) {
              createCall(context, destination, provider);

              return false;
            }
          });
    }

    popup.show();
  }
 @Override
 public boolean onCreateOptionsMenu(Menu menu) {
   super.onCreateOptionsMenu(menu);
   final MenuItem item =
       menu.add(0, 1, Menu.NONE, myResource.getResource("menu").getResource("search").getValue());
   item.setOnMenuItemClickListener(this);
   item.setIcon(R.drawable.ic_menu_search);
   return true;
 }
    private void setItem(MenuItem item) {
      item.setChecked(itemChecked)
          .setVisible(itemVisible)
          .setEnabled(itemEnabled)
          .setCheckable(itemCheckable >= 1)
          .setTitleCondensed(itemTitleCondensed)
          .setIcon(itemIconResId)
          .setAlphabeticShortcut(itemAlphabeticShortcut)
          .setNumericShortcut(itemNumericShortcut);

      if (itemShowAsAction >= 0) {
        item.setShowAsAction(itemShowAsAction);
      }

      if (itemListenerMethodName != null) {
        if (mContext.isRestricted()) {
          throw new IllegalStateException(
              "The android:onClick attribute cannot " + "be used within a restricted context");
        }
        item.setOnMenuItemClickListener(
            new InflatedOnMenuItemClickListener(mRealOwner, itemListenerMethodName));
      }

      if (itemCheckable >= 2) {
        if (item instanceof MenuItemImpl) {
          MenuItemImpl impl = (MenuItemImpl) item;
          impl.setExclusiveCheckable(true);
        } else {
          menu.setGroupCheckable(groupId, true, true);
        }
      }

      boolean actionViewSpecified = false;
      if (itemActionViewClassName != null) {
        View actionView =
            (View)
                newInstance(
                    itemActionViewClassName,
                    ACTION_VIEW_CONSTRUCTOR_SIGNATURE,
                    mActionViewConstructorArguments);
        item.setActionView(actionView);
        actionViewSpecified = true;
      }
      if (itemActionViewLayout > 0) {
        if (!actionViewSpecified) {
          item.setActionView(itemActionViewLayout);
          actionViewSpecified = true;
        } else {
          Log.w(
              LOG_TAG,
              "Ignoring attribute 'itemActionViewLayout'." + " Action view already specified.");
        }
      }
      if (itemActionProvider != null) {
        item.setActionProvider(itemActionProvider);
      }
    }
 @Override
 public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
   MenuItem newItem = menu.findItem(R.id.new_item);
   newItem.setVisible(true);
   newItem.setOnMenuItemClickListener(
       new MenuItem.OnMenuItemClickListener() {
         @Override
         public boolean onMenuItemClick(MenuItem item) {
           Fragment fragment = new WaveItemsListFragment();
           FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
           fragmentManager
               .beginTransaction()
               .add(R.id.content_frame, fragment)
               .addToBackStack(null)
               .commit();
           return true;
         }
       });
   super.onCreateOptionsMenu(menu, inflater);
 }