类android.view.MenuItem.OnMenuItemClickListener源码实例Demo

下面列出了怎么用android.view.MenuItem.OnMenuItemClickListener的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: appinventor-extensions   文件: ReplForm.java
public void addLogcatButton(Menu menu) {
  if (!ReplApplication.isAcraActive()) { // If ACRA isn't active
    return;                              // we don't show the button
  }
  MenuItem showSettingsItem = menu.add(Menu.NONE, Menu.NONE, 4,
    "Send Error Report").setOnMenuItemClickListener(new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
          String reportId = genReportId();
          ReplApplication.reportError(null, reportId);
          Notifier.oneButtonAlert(activeForm, "Your Report Id is: " + reportId +
            "<br />Use this ID when reporting this error.", "Error Report Id", "OK");
          return true;
        }
      });
  showSettingsItem.setIcon(android.R.drawable.stat_sys_warning);
}
 
@Override
public void onCreateOptionsMenu(final Menu menu, final MenuInflater inflater) {
    menu.clear();
    // ActionBarの全削除ボタンを追加
    final MenuItem menuItem = menu.add(R.string.delete_all);
    menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
    menuItem.setOnMenuItemClickListener(new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(final MenuItem item) {
            if (item.getTitle().equals(menuItem.getTitle())) {
                deleteAllTokenProc();
            }
            return true;
        }
    });
}
 
@SuppressLint({ "InlinedApi", "NewApi" })
   @Override
public boolean onCreateOptionsMenu(Menu menu) {
    
    MenuItem menuItem = menu.add("Map").setOnMenuItemClickListener(new OnMenuItemClickListener(){
           @Override
           public boolean onMenuItemClick (MenuItem item){
              
               // Using static global variable to pass data. Avoid this in your app (memory leaks etc)!
               PackageManagerActivity.dataSource = new PackageManagerTileDataSource(PackageManagerActivity.this.packageManager);
               
               Intent myIntent = new Intent(PackageManagerActivity.this,
                       PackagedMapActivity.class);
               PackageManagerActivity.this.startActivity(myIntent);
               
               return true;
           }
       });
    
    menuItem.setIcon(android.R.drawable.ic_dialog_map);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
    }
    return super.onCreateOptionsMenu(menu);
}
 
private void addLanguageMenuOption(final Menu menu, String text, final String value) {

		MenuItem menuItem = menu.add(text).setOnMenuItemClickListener(new OnMenuItemClickListener(){
			@Override
			public boolean onMenuItemClick (MenuItem item){
				for (int i = 0; i < menu.size(); i++) {
					MenuItem otherItem = menu.getItem(i);
					if (otherItem == item) {
						otherItem.setIcon(android.R.drawable.checkbox_on_background);
					} else {
						otherItem.setIcon(null);
					}
				}
				vectorStyleLang = value;
				updateBaseLayer();
				return true;
			}
		});

		if (vectorStyleLang.equals(value)) {
			menuItem.setIcon(android.R.drawable.checkbox_on_background);
		}
	}
 
private void addStyleMenuOption(final Menu menu, String text, final String value) {
	MenuItem menuItem = menu.add(text).setOnMenuItemClickListener(new OnMenuItemClickListener(){
		@Override
		public boolean onMenuItemClick (MenuItem item){
			for (int i = 0; i < menu.size(); i++) {
				MenuItem otherItem = menu.getItem(i);
				if (otherItem == item) {
					otherItem.setIcon(android.R.drawable.checkbox_on_background);
				} else {
					otherItem.setIcon(null);
				}
			}
			vectorStyleName = value;
			updateBaseLayer();
			return true;
		}
	});

	if (vectorStyleName.equals(value)) {
		menuItem.setIcon(android.R.drawable.checkbox_on_background);
	}
}
 
源代码6 项目: YiBo   文件: UserContextMenuListener.java
private void analyzeUserMenu(final Adapter adapter, final User user, ContextMenu menu, final Context context) {
	menu.setHeaderTitle(R.string.menu_title_blog);
    int order = 0;

    MenuItem commentMenu = menu.add(0, 1, order++, R.string.menu_group_member_user_profile);
    Intent commentIntent = new Intent(context, ProfileActivity.class);
    commentIntent.putExtra("USER", user);
    commentMenu.setIntent(commentIntent);

    MenuItem unfollowMenu = menu.add(0, 2, order++, R.string.menu_group_member_unfollow);
    unfollowMenu.setOnMenuItemClickListener(new OnMenuItemClickListener() {
		@Override
		public boolean onMenuItemClick(MenuItem item) {
			CacheAdapter<User> cacheAdapter = (CacheAdapter<User>)AdapterUtil.getCacheAdapter(adapter);
			GroupMemberUnfollowTask task = new GroupMemberUnfollowTask(cacheAdapter, user);
			task.execute();
			return false;
		}
    });
    
    MenuItem messageMenu = menu.add(0, 2, order++, R.string.menu_group_member_message);
    Intent messageIntent = new Intent(context, EditDirectMessageActivity.class);
    messageIntent.putExtra("DISPLAY_NAME", user.getDisplayName());
	messageMenu.setIntent(messageIntent);
}
 
源代码7 项目: appinventor-extensions   文件: Form.java
public void addExitButtonToMenu(Menu menu) {
  MenuItem stopApplicationItem = menu.add(Menu.NONE, Menu.NONE, Menu.FIRST,
  "Stop this application")
  .setOnMenuItemClickListener(new OnMenuItemClickListener() {
    public boolean onMenuItemClick(MenuItem item) {
      showExitApplicationNotification();
      return true;
    }
  });
  stopApplicationItem.setIcon(android.R.drawable.ic_notification_clear_all);
}
 
源代码8 项目: appinventor-extensions   文件: Form.java
public void addAboutInfoToMenu(Menu menu) {
  MenuItem aboutAppItem = menu.add(Menu.NONE, Menu.NONE, 2,
  "About this application")
  .setOnMenuItemClickListener(new OnMenuItemClickListener() {
    public boolean onMenuItemClick(MenuItem item) {
      showAboutApplicationNotification();
      return true;
    }
  });
  aboutAppItem.setIcon(android.R.drawable.sym_def_app_icon);
}
 
源代码9 项目: appinventor-extensions   文件: ReplForm.java
public void addSettingsButton(Menu menu) {
  MenuItem showSettingsItem = menu.add(Menu.NONE, Menu.NONE, 3,
    "Settings").setOnMenuItemClickListener(new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
          PhoneStatus.doSettings();
          return true;
        }
      });
  showSettingsItem.setIcon(android.R.drawable.sym_def_app_icon);
}
 
源代码10 项目: delion   文件: RecentTabsRowAdapter.java
@Override
void onCreateContextMenuForChild(final int childPosition, ContextMenu menu,
        Activity activity) {
    if (isMoreButton(childPosition)) return;
    OnMenuItemClickListener listener = new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            mRecentTabsManager.closeTab(getChild(childPosition));
            return true;
        }
    };
    menu.add(R.string.close_tab).setOnMenuItemClickListener(listener);
}
 
源代码11 项目: delion   文件: RecentTabsRowAdapter.java
@Override
public void onCreateContextMenuForChild(int childPosition, ContextMenu menu,
        Activity activity) {
    final ForeignSessionTab foreignSessionTab = getChild(childPosition);
    OnMenuItemClickListener listener = new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            mRecentTabsManager.openForeignSessionTab(mForeignSession, foreignSessionTab,
                    WindowOpenDisposition.NEW_BACKGROUND_TAB);
            return true;
        }
    };
    menu.add(R.string.contextmenu_open_in_new_tab).setOnMenuItemClickListener(listener);
}
 
源代码12 项目: AndroidChromium   文件: RecentTabsRowAdapter.java
@Override
void onCreateContextMenuForChild(final int childPosition, ContextMenu menu,
        Activity activity) {
    if (isMoreButton(childPosition)) return;
    OnMenuItemClickListener listener = new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            mRecentTabsManager.closeTab(getChild(childPosition));
            return true;
        }
    };
    menu.add(R.string.close_tab).setOnMenuItemClickListener(listener);
}
 
源代码13 项目: AndroidChromium   文件: RecentTabsRowAdapter.java
@Override
public void onCreateContextMenuForChild(int childPosition, ContextMenu menu,
        Activity activity) {
    final ForeignSessionTab foreignSessionTab = getChild(childPosition);
    OnMenuItemClickListener listener = new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            mRecentTabsManager.openForeignSessionTab(mForeignSession, foreignSessionTab,
                    WindowOpenDisposition.NEW_BACKGROUND_TAB);
            return true;
        }
    };
    menu.add(R.string.contextmenu_open_in_new_tab).setOnMenuItemClickListener(listener);
}
 
源代码14 项目: 365browser   文件: RecentTabsRowAdapter.java
@Override
public void onCreateContextMenuForChild(int childPosition, ContextMenu menu,
        Activity activity) {
    final ForeignSessionTab foreignSessionTab = getChild(childPosition);
    OnMenuItemClickListener listener = new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(MenuItem item) {
            mRecentTabsManager.openForeignSessionTab(mForeignSession, foreignSessionTab,
                    WindowOpenDisposition.NEW_BACKGROUND_TAB);
            return true;
        }
    };
    menu.add(R.string.contextmenu_open_in_new_tab).setOnMenuItemClickListener(listener);
}
 
private void handleActionBarMenu() {
    getToolbar().inflateMenu(R.menu.activity_main);
    final OnMenuItemClickListener onMenuItemClickListener = new OnMenuItemClickListener() {
        @Override
        public boolean onMenuItemClick(final MenuItem item) {
            String url = null;
            switch (item.getItemId()) {
                case R.id.menuItem_all_my_apps:
                    url = "https://play.google.com/store/apps/developer?id=AndroidDeveloperLB";
                    break;
                case R.id.menuItem_all_my_repositories:
                    url = "https://github.com/AndroidDeveloperLB";
                    break;
                case R.id.menuItem_current_repository_website:
                    url = "https://github.com/AndroidDeveloperLB/MaterialPreferenceLibrary";
                    break;
            }
            if (url == null)
                return true;
            final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
            intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
            startActivity(intent);
            return true;
        }
    };
    setOnMenuItemClickListenerRecursive(getToolbar().getMenu(), onMenuItemClickListener);
}
 
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);
        }
    }
}
 
源代码17 项目: gsn   文件: ActivityHome.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {

	final MenuItem add = menu.add("Quit TinyGSN");

	add.setOnMenuItemClickListener(new OnMenuItemClickListener() {
		public boolean onMenuItemClick(final MenuItem item) {
			finish();
			return true;
		}
	});

	return super.onCreateOptionsMenu(menu);
}
 
源代码18 项目: GeoLog   文件: ProfileActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
	menu.
		add(R.string.menu_done).
		setOnMenuItemClickListener(new OnMenuItemClickListener() {				
			@Override
			public boolean onMenuItemClick(MenuItem item) {
				finish();
				return false;
			}
		}).
		setIcon(R.drawable.ic_action_done).
		setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
		return true;
}
 
public void setOnMenuItemClickListener(OnMenuItemClickListener listener) {
	mListener = listener;
}
 
源代码20 项目: AppOpsXposed   文件: SettingsActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
	if(Util.isSystemApp(this))
	{
		menu.add(R.string.uninstall)
				.setIcon(android.R.drawable.ic_menu_delete)
				.setOnMenuItemClickListener(new OnMenuItemClickListener() {

					@Override
					public boolean onMenuItemClick(MenuItem item)
					{
						final AlertDialog.Builder ab = new AlertDialog.Builder(SettingsActivity.this);
						ab.setMessage(getString(R.string.uninstall) + "? " + getString(R.string.will_reboot));
						ab.setNegativeButton(android.R.string.cancel, null);
						ab.setPositiveButton(android.R.string.ok, new OnClickListener() {

							@Override
							public void onClick(DialogInterface dialog, int which)
							{
								if(!SU.available())
								{
									Toast.makeText(SettingsActivity.this,
											R.string.toast_needs_root, Toast.LENGTH_SHORT).show();
								}
								else
								{
									final String[] commands = {
											"mount -o remount,rw /system",
											"rm " + LauncherActivity.SYSTEM_APK,
											"mount -o remount,ro /system",
											"sync",
											"reboot",
									};

									Toast.makeText(SettingsActivity.this, R.string.will_reboot,
											Toast.LENGTH_LONG).show();
									Util.runAsSu(commands);
								}
							}
						});

						ab.show();

						return true;
					}
				})
				.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
	}

	return true;
}
 
源代码21 项目: delion   文件: MostVisitedItem.java
/**
 * Allows the manager to add context menu items for a given MostVisitedItem.
 * @param menu The context menu that should be used to add menu items.
 * @param listener Listener that should get the callbacks for context menu selections.
 */
void onCreateContextMenu(ContextMenu menu, OnMenuItemClickListener listener);
 
 类所在包
 同包方法