Android下创建弹出式菜单

来源:互联网 发布:抢商品软件 编辑:程序博客网 时间:2024/06/06 00:19

首先在onCreate函数中的末尾, 添加registerForContextMenu(getListView());语句,
意思是将屏幕中listView的每一项,都看做是菜单项,进行注册,

然后在继承onCreateContextMenu()方法.如下:

 @Override                  //创建长按弹出式菜单,这是一个回调函数
    public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {
        super.onCreateContextMenu(menu, v, menuInfo);
        menu.add(0, DELETE_ID, 0, R.string.menu_delete);                         //添加两个菜单项
        menu.add(0, INSERT_ID, 1, R.string.menu_insert);  
    }

最后再设置菜单项被选中后的动作

    @Override
    public boolean onContextItemSelected(MenuItem item) {
        switch(item.getItemId()){
        case DELETE_ID:
            AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); //获取菜单信息
            mDbHelper.deleteNote(info.id);  //删除被选中的记事
            fillData();    
            return true;
        }
        return super.onContextItemSelected(item);

    }
 菜单创建成功

原创粉丝点击