andorid自定listview添加删除button,并对列进行删除

废话不多说,直接上代码:没有任何说明的,请大家见谅。

package com.duduli.li;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.database.Cursor;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.SimpleCursorAdapter;
import android.widget.TextView;

public class MySimpleCursorAdapter extends SimpleCursorAdapter {
private LayoutInflater inflater;
private ViewHolder vh = null;
private List<Map<String, Object>> data;
private Context context;
public MySimpleCursorAdapter(Context context, int layout, Cursor c, String[] from,
int[] to) {
super(context, layout, c, from, to);
this.inflater = LayoutInflater.from(context);
this.context = context;
data = getData();
// TODO Auto-generated constructor stub
}

@Override
public Cursor getCursor() {
// TODO Auto-generated method stub
return super.getCursor();
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return super.getCount();
}

@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return super.getItem(position);
}

@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return super.getItemId(position);
}



@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub

if(convertView == null){
vh = new ViewHolder();

convertView = inflater.inflate(R.layout.showbook, null);
vh.bookID = (TextView) convertView.findViewById(R.id.bookID);
vh.bookName = (TextView) convertView.findViewById(R.id.bookName);
vh.bookPosition = (TextView) convertView.findViewById(R.id.bookPosition);
vh.button = (Button) convertView.findViewById(R.id.button);

convertView.setTag(vh);
}else{
vh = (ViewHolder) convertView.getTag();
}




// System.out.println(position+"::::"+data.get(position).get("bookName"));


// System.out.println("size is :"+getData().size());
// System.out.println(list.get(0).get("bookName"));
// System.out.println(list.get(position).get("bookID"));

// System.out.println("position:"+position);
vh.bookID.setText((String)data.get(position).get("bookID"));
vh.bookName.setText((String)data.get(position).get("bookName"));
vh.bookPosition.setText((String)data.get(position).get("bookPosition"));



vh.button.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.out.println("AAA : " + position);
System.out.println(data.get(position).get("bookID"));
delDialog(context,(String)data.get(position).get("bookName"));
}
});


return convertView;
}


// public void setGone(){
// System.out.println("gone");
// vh.button.setVisibility(View.GONE);
// }



public List<Map<String, Object>> getData(){
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();

while(getCursor().moveToNext()){
Map<String, Object> map = new HashMap<String, Object>();
// System.out.println("ID: "+getCursor().getString(0));
map.put("bookID", getCursor().getString(0));
// System.out.println("NAME: "+getCursor().getString(1));
map.put("bookName", getCursor().getString(1));
map.put("bookPosition", getCursor().getString(3));
list.add(map);
}

/*for(int i=0; i<list.size(); i++){
System.out.println(i);
System.out.println(list.get(i).get("bookID"));
System.out.println(list.get(i).get("bookName"));
}*/
// System.out.println(list.get(1).get("bookName"));
return list;
}

public void delDialog(Context context,String bookName){
new AlertDialog.Builder(context)
.setTitle("删除书本")
.setMessage("你确定要删除"+bookName+"?")
.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
})
.show();
}


}



package com.duduli.li;

import android.widget.Button;
import android.widget.TextView;

public class ViewHolder {
public TextView bookID;
public TextView bookPosition;
public TextView bookName;
public Button button;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值