关闭

我的android 第19天 - 上下文菜单

379人阅读 评论(0) 收藏 举报
我的android 第19天 - 上下文菜单

  实现流程

       5、对列表项注册上下文菜单

          . registerForContextMenu(listView)或者

            listView.setOnCreateContextMenuListener(this);

            给liestView注册上下文菜单

          . onCreateContextMenu(ContextMenu menu, View v,

             ContextMenuInfo menuInfo):创建列表项的上下文菜单

             此方法每次显示上下文都会触发

          . 装配上下文菜单(与选择菜单差不多)

          . 设置上下文菜单的标题:menu.setHeaderTitle(name);

6、监听上下文菜单

•onContextItemSelected
•对上下文菜单进行业务处理
 /**
     * 每次显示上下文菜单的时都会触发(每次长按ListView的列表项显示上下文菜单 */
    public void onCreateContextMenu(ContextMenu menu, View v,
    ContextMenuInfo menuInfo) {
    AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
    // 取出当前Item对应的map数据
    HashMap<String, Object> map = data.get(info.position);
    // 取得书名
    String name = map.get(NAME).toString();
    // 设置上下文菜单的顶部标题
    menu.setHeaderTitle(name);
    getMenuInflater().inflate(R.menu.menu_book_context, menu);
    }


    /**
     * 监听选择菜单的点击 */
    public boolean onOptionsItemSelected(MenuItem item) {
    int itemId = item.getItemId();
    switch (itemId) {
case R.id.menu_add: // 添加
menuEidtOrAdd(null);
break;

case R.id.menu_delete: // 删除
optionsMenuDelete();
break;

case R.id.menu_good_look: // 好看
case R.id.menu_not_good_look: // 不好看
optionsMenuGoodLookOrNot(itemId);
break;
}
    return super.onOptionsItemSelected(item);
    }

下载视频代码
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:23670次
    • 积分:650
    • 等级:
    • 排名:千里之外
    • 原创:44篇
    • 转载:8篇
    • 译文:0篇
    • 评论:0条
    文章存档