[1]添加菜单方式 通过一个布局 在res下 meun目录下创建一个布局
<menu xmlns:android="http://schemas.android.com/apk/res/android" ><itemandroid:id="@+id/action_settings1"android:orderInCategory="10"android:title="hahah"/><itemandroid:id="@+id/action_settings2"android:orderInCategory="11"android:title="hehe"/></menu>
[2]动态的添加
public boolean onCreateOptionsMenu(Menu menu) {// [1]getMenuInflater().inflate(R.menu.main, menu);//[2]添加菜单 menu.add(0, 1, 0, "后退");menu.add(0, 2, 0, "前进");return true;}
[3]点击menu弹出一个对话框 如果你想实现自己定义的view 效果重写onMeunOpened方法
public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// [1]getMenuInflater().inflate(R.menu.main, menu);//[2]添加菜单 menu.add(0, 1, 0, "后退");menu.add(0, 2, 0, "前进");return true;}//想知道具体点击的是menu的哪个条目 需要重写这个方法 @Overridepublic boolean onOptionsItemSelected(MenuItem item) {switch (item.getItemId()) {case 1:System.out.println("后退");break;case 2:System.out.println("前进");break;default:break;}return super.onOptionsItemSelected(item);}//当点击menu按键的时候执行这个方法 @Overridepublic boolean onMenuOpened(int featureId, Menu menu) {//弹出一个对话框 AlertDialog.Builder builder = new Builder(this);builder.setTitle("警告");builder.setMessage("您的网络异常");builder.setPositiveButton("确定", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {System.out.println("点了确定");}});builder.setNegativeButton("取消", new OnClickListener() {@Overridepublic void onClick(DialogInterface dialog, int which) {//点击取消执行 System.out.println("取消");}});//使用对话框一定要记得show出来 builder.show();return false;}//点击按钮跳转TestActivitypublic void click(View v) {Intent intent = new Intent(this,TestActity.class);startActivity(intent);}}