计算机学院研发第二轮考核--------数据库篇之(删除书签)

来源:互联网 发布:windows清理助手怎么样 编辑:程序博客网 时间:2024/05/22 14:08

上一篇文章我提到了添加书签,然而添加书签只是添加都数据库的Lable中,还没与用户有所交互,这就需要用到第一轮考核中的listview的控件把Lable表里面的数据放到Activity里面。在这里面就不作详细的介绍。具体可以看回我第一轮考核的listview的介绍。现在就介绍书签的删除的。

我们通常使用的浏览器一般在进入了书签这个Activity里面然后,长安某个书签,就会弹出一个菜单,在这里,我定义的菜单只有简单的删除和取消这两个操作。


一下代码就实现了简单的删除操作。


//添加长按菜单,菜单标题:操作,和两个点击事件,一个删除,另一个取消

list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {

public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {

menu.setHeaderTitle("操作");
menu.add(0, 0, 0, "删除");
menu.add(0, 1, 0, "取消");

}
});

}

//当添加完长按菜单,马上调用该方法
public boolean onContextItemSelected(MenuItem item) {
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item .getMenuInfo();  
//定义一个变量,返回的数据是你当前点击的item的位置
MID = (int) info.id;
switch (item.getItemId()) {  
case 0:  
// simpleAdapter.getItem(MID);返回的是一个(Map<String, Object>)类型,通过该类型,获取它的键名,然后取出其值


Map<String, Object> m=(Map<String, Object>)simpleAdapter.getItem(MID);

// 定义一个字符串,接收获取的值
String deleteUrl = (String) m.get("url");

// 定义一个删除的条件,传过Lable的管理类
Object[] params = {deleteUrl};

// 调用数据库Lable的删除语句
service.deleteLable(params);

// 重新加载该页面,从而达到删除后,该item马上从当前Activity消失的效果
Intent intent = new Intent(HistoryListView.this,HistoryListView.class);
startActivity(intent);

// 必须调用finish();的方法,否则上一个Activity一直不销毁,然后当你返回的时候就不断重复之前的Activity
finish();


Toast.makeText(HistoryListView.this, "已删除", Toast.LENGTH_SHORT).show();
break;  


case 1:  
Toast.makeText(HistoryListView.this, "已取消", Toast.LENGTH_SHORT).show();
break;  


default:  
break;  
}  
 
return super.onContextItemSelected(item);  

}

0 0
原创粉丝点击