如何使用意图填充菜单?

时间:2010-11-03 07:55:10

标签: android

如何使用intents填充菜单?我不明白那件事。

还是有更好的方法吗?

更新

假设我有一个需要调整图像大小的应用程序,还有许多其他应用程序可以调整图像大小。如何在应用程序的菜单上显示应用程序列表,以便在单击特定选项时,它将调用与该应用程序关联的意图。简单地说,我可以在我的应用程序中调整图像大小,而不必担心如何完成。

1 个答案:

答案 0 :(得分:1)

这里有一个例子,使用菜单按钮出现的onOptionsItemSelected,你可以控制菜单的作用:

public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()) {
      case HISTORY_ID: {
        AlertDialog historyAlert = historyManager.buildAlert();
        historyAlert.show();
        break;
      }
      case SETTINGS_ID: {
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
        intent.setClassName(this, PreferencesActivity.class.getName());
        startActivity(intent);
        break;
      }
}

但我们使用以下代码创建菜单:

public boolean onCreateOptionsMenu(Menu menu) {
    super.onCreateOptionsMenu(menu);
    menu.add(0, SETTINGS_ID, 0, R.string.menu_settings)
        .setIcon(android.R.drawable.ic_menu_preferences);
    menu.add(0, HELP_ID, 0, R.string.menu_help)
        .setIcon(android.R.drawable.ic_menu_help);
    menu.add(0, ABOUT_ID, 0, R.string.menu_about)
        .setIcon(android.R.drawable.ic_menu_info_details);
    return true;
  }