安卓菜单功能的实现

    技术2024-10-08  63

    菜单分为三种

    1.Options menu and action bar 选项菜单和操作栏

    2.Context menu and contextual action mode 上下文菜单和上下文动作模式

    3.Popup menu 弹出式菜单

    使用简单的方法实现

    public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); menu.add(0,1,1, “分享”).setIcon(android.R.drawable.ic_menu_share); menu.add(0,2,2,“历史记录”).setIcon(android.R.drawable.ic_menu_info_details); menu.add(0,4,4,“模式”).setIcon(android.R.drawable.ic_menu_set_as); menu.add(0,5,5,“退出”).setIcon(android.R.drawable.ic_menu_close_clear_cancel); menu.add(0,3,3,“喜欢”).setIcon(android.R.drawable.ic_menu_save); return true; } 对于菜单中的个选项进行点击的时候相应的事件。最后要说明的是要加上return FALSE 来实现 public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case 1:toast.show();break; case 2:toast.show();break; case 3:toast.show();break; case 4:toast.show();break; case 5:MainActivity.this.finish();break; } return false; } ### 也可以按照上述31.Options menu   这个菜单比较原始,它的实现必须通过点击actionbar 上的按钮或手机自带的菜单键才能显示。首先,在res文件目录下,新建文件夹menu,然后再menu文件夹中新建menu的xml文件,这里我的文件名为"option_menu". ```java <?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/add" android:icon="@mipmap/addition" android:title="添加"/> <item android:id="@+id/see" android:icon="@mipmap/eye" android:title="发现"/> <item android:id="@+id/state" android:icon="@mipmap/emoji" android:title="表情"/> </menu> public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.option_menu,menu); return true; } }
    Processed: 0.010, SQL: 9