动态添加SubMenu子菜单

我会带着你远行 2022-09-23 11:54 264阅读 0赞
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  3. package="com.example.submenu"
  4. android:versionCode="1"
  5. android:versionName="1.0" >
  6. <uses-sdk
  7. android:minSdkVersion="15"
  8. android:targetSdkVersion="20" />
  9. <application
  10. android:allowBackup="true"
  11. android:icon="@drawable/ic_launcher"
  12. android:label="@string/app_name"
  13. android:theme="@style/AppTheme" >
  14. <activity
  15. android:name=".MainActivity"
  16. android:label="@string/app_name"
  17. android:theme="@android:style/Theme.Light.NoTitleBar" >
  18. <intent-filter>
  19. <action android:name="android.intent.action.MAIN" />
  20. <category android:name="android.intent.category.LAUNCHER" />
  21. </intent-filter>
  22. </activity>
  23. </application>
  24. </manifest>
  25. package com.example.submenu;
  26. import android.app.Activity;
  27. import android.os.Bundle;
  28. import android.view.Menu;
  29. import android.view.MenuItem;
  30. import android.view.SubMenu;
  31. import android.widget.Toast;
  32. public class MainActivity extends Activity {
  33. @Override
  34. protected void onCreate(Bundle savedInstanceState) {
  35. super.onCreate(savedInstanceState);
  36. setContentView(R.layout.activity_main);
  37. }
  38. @Override
  39. public boolean onCreateOptionsMenu(Menu menu) {
  40. // Inflate the menu; this adds items to the action bar if it is present.
  41. //getMenuInflater().inflate(R.menu.main, menu);
  42. SubMenu file=menu.addSubMenu("文件");
  43. SubMenu edit=menu.addSubMenu("编辑");
  44. file.setHeaderTitle("文件操作");
  45. file.setHeaderIcon(R.drawable.ic_launcher);
  46. file.add(1,1,1,"新建");
  47. file.add(1,2,1,"打开");
  48. file.add(1,3,1,"保存");
  49. edit.setHeaderTitle("编辑操作");
  50. edit.setHeaderIcon(R.drawable.ic_launcher);
  51. edit.add(2,1,1,"复制");
  52. edit.add(2,2,1,"粘贴");
  53. edit.add(2,3,1,"剪切");
  54. return true;
  55. }
  56. @Override
  57. public boolean onOptionsItemSelected(MenuItem item) {
  58. // Handle action bar item clicks here. The action bar will
  59. // automatically handle clicks on the Home/Up button, so long
  60. // as you specify a parent activity in AndroidManifest.xml.
  61. // int id = item.getItemId();
  62. // if (id == R.id.action_settings) {
  63. // return true;
  64. // }
  65. if(item.getGroupId()==1){
  66. switch (item.getItemId()) {
  67. case 1:
  68. Toast.makeText(MainActivity.this,"点击了新建",Toast.LENGTH_SHORT).show();
  69. break;
  70. case 2:
  71. Toast.makeText(MainActivity.this,"点击了打开",Toast.LENGTH_SHORT).show();
  72. break;
  73. case 3:
  74. Toast.makeText(MainActivity.this,"点击了保存",Toast.LENGTH_SHORT).show();
  75. break;
  76. default:
  77. break;
  78. }
  79. }
  80. else if(item.getGroupId()==2){
  81. switch (item.getItemId()) {
  82. case 1:
  83. Toast.makeText(MainActivity.this,"点击了复制",Toast.LENGTH_SHORT).show();
  84. break;
  85. case 2:
  86. Toast.makeText(MainActivity.this,"点击了粘贴",Toast.LENGTH_SHORT).show();
  87. break;
  88. case 3:
  89. Toast.makeText(MainActivity.this,"点击了剪切",Toast.LENGTH_SHORT).show();
  90. break;
  91. default:
  92. break;
  93. }
  94. }
  95. return super.onOptionsItemSelected(item);
  96. }
  97. }

发表评论

表情:
评论列表 (有 0 条评论,264人围观)

还没有评论,来说两句吧...

相关阅读