2013-07-14 76 views
1

我在android应用程序中添加了一个菜单项。Android菜单项onclick

下面是代码:

public boolean onCreateOptionsMenu(Menu menu) 
{  
    menu.add(1, 1, 0, "Item 1"); 
    return true; 
} 

我需要当用户点击菜单项显示一个警告对话框。

我的警告对话框

代码
final Activity activity = this; 
AlertDialog alertDialog = new AlertDialog.Builder(activity).create(); 
alertDialog.setTitle("Item 1");   
alertDialog.setMessage("This is Item 1");   
alertDialog.show(); 
+0

你必须重写'onOptionsItemSelected' – Raghunandan

+0

@Raghunandan我是制作android应用程序的新手。请你可以显示任何代码或任何教程链接。 – Enve

+0

检查我的答案,它现在应该工作 – Raghunandan

回答

1

覆盖onOptionsItemSelected。您的物品ID是1.使用开关盒并显示diloag。

 @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
      case 1: 
       AlertDialog alertDialog = new AlertDialog.Builder(ActivityName.this).create(); // You can use activity context directly. 
       alertDialog.setTitle("Item 1");   
       alertDialog.setMessage("This is Item 1");   
       alertDialog.show(); 
       return true; 
      default: 
       return super.onOptionsItemSelected(item); 
     } 
    } 

public abstract MenuItem add (int groupId, int itemId, int order, CharSequence title)

在API级别1 添加新项菜单。此项目显示标签的给定标题。

参数

groupId该项目应该是其中一部分的组标识符。这可以用来定义批量状态更改的项目组。如果一个项目不应该在一个组中,通常使用NONE。

itemId唯一的商品ID。如果您不需要唯一的ID,请使用NONE。 order物品的订单。如果您不关心订单,请使用NONE。请参阅getOrder()。

title显示该项目的文本。

返回

新添加的菜单项。

public boolean onOptionsItemSelected (MenuItem item)

在API级别1

,只要在你的选项菜单中的项目中选择这个钩子被调用。默认实现简单地返回false以进行正常处理(调用项目的Runnable或者根据需要向其处理程序发送消息)。您可以将此方法用于您想要在没有其他设施的情况下进行处理的任何物品。

派生类应该调用基类来执行默认菜单处理。

参数 item已选择的菜单项。

返回

布尔返回假,让普通的菜单处理,继续进行,真到这里吃了。