上下文菜单---onCreateContextMenu()

上下文菜单实现
   /*重写Activity的onCreateContextMenu()方法,设置菜单选项*/
    @Override
    public void onCreateContextMenu(ContextMenu menu, View v,
    		ContextMenuInfo menuInfo) {
    	// TODO Auto-generated method stub
    	super.onCreateContextMenu(menu, v, menuInfo);
    	menu.setHeaderTitle("操作选项");
    	menu.add(0, 0, 0, "运行文件");//add()添加
		menu.add(0, 1, 0, "删除文件");
		menu.add(0, 2, 0, "上传保存数据");
    }
    /*当点击选择menu上的item时callback
     * 重写该方法,响应菜单单击事件*/
    public boolean onContextItemSelected(MenuItem item) {
    	// TODO Auto-generated method stub
    	/*为了在选择的一个view条目上执行相应的动作,应用程序需要知道View条目的list ID.
    	 * 为了获得 list ID,程序中调用了 getMenuInfo(), 它返回一个 AdapterView.AdapterContextMenuInfo 对象,
    	 * 这个对象包含了条目的list ID.*/
    	AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
    	which = info.id;// 这里的info.id对应的就是ListView中的id的值 
    	position = info.position;//listView中显示ContextMenu的条目位置
    	switch(item.getItemId()){
    	case 0:
    		 	
    		break;
    	case 1://删除文件
    		List<File> list = adapter.list;
    		//list.remove(position);
    		File f = list.get(position);
    		f.delete();
    		//adapter.list.remove(position);
    		adapter.notifyDataSetChanged();//通知适配器数据发生变化
    		break;
    	case 2:
    		break;
    	default:
    		break;
    	}
    	return super.onContextItemSelected(item);
    }

 

转载于:https://my.oschina.net/u/1014520/blog/186928

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值