Android菜单

来源:互联网 发布:js object添加 编辑:程序博客网 时间:2024/05/21 14:09

Android中的2种Menu:OptionsMenu、ContextMenu

Activity自带了2种弹出框menu,样式好看,调用简单,可以替代很多功能,比如Dialog,下拉菜单等等

1、onCreateOptionsMenu选择菜单


点击导航条左上角...显示。此方法在Android Stuido创建的项目中,Activity中自带

 @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        getMenuInflater().inflate(R.menu.menu_main, menu);        return true;    }    @Override    public boolean onOptionsItemSelected(MenuItem item) {        int id = item.getItemId();        switch (id) {            case R.id.action_settings:                break;            case R.id.action_add:                break;        }        return super.onOptionsItemSelected(item);    }

 

2、onCreateContextMenu上下文菜单


这个菜单绑定其他控件使用。比如点击按钮,跳出ContextMenu(menu.main.xml同一个)

btn_long = (Button) findViewById(R.id.btn_long);registerForContextMenu(btn_long);@Overridepublic void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {    getMenuInflater().inflate(R.menu.menu_main, menu);    super.onCreateContextMenu(menu, v, menuInfo);}@Overridepublic boolean onContextItemSelected(MenuItem item) {    int id = item.getItemId();    switch (id) {        case R.id.action_settings:            break;        case R.id.action_add:            break;    }    return super.onContextItemSelected(item);}

onCreateOptionsMenu只会被创建一次

onCreateContextMenu每次执行都会创建

0 0