Java 使用适配器类从列表视图中删除选中项并从数据库中删除数据 公共类删除扩展BaseAdapter{ sqlitedb数据库; 字符串am; 私人最终上下文c; 私人最终ArrayList str; 私有最终字符串[]编号; ArrayList检查=新建ArrayList(); 公共删除(上下文c、ArrayList str、字符串[]编号、ArrayList检查){ 这个.c=c; this.str=str; 这个数字=数字; 这个.checks=checks; } @凌驾 public int getCount(){ 返回str.size(); } @凌驾 公共对象getItem(int位置){ 返回null; } @凌驾 公共长getItemId(int位置){ 返回0; } @凌驾 公共视图getView(最终整数位置、视图转换视图、视图组父视图){ LayoutInflater充气器=(LayoutInflater)c.getSystemService(Context.LAYOUT\u充气器\u服务); 视图列表视图; if(convertView==null) { ListView=新视图(c); ListView=充气机充气(右布局按钮,空); TextView TextView=(TextView)ListView.findViewById(R.id.textView6); setText(str.get(position)); } 其他的 { ListView=(视图)convertView; } 按钮btnupdate=(按钮)ListView.findViewById(R.id.button4); //复选框声明 复选框chk=(复选框)ListView.findViewById(R.id.chk1); btnupdate.setOnClickListener(新视图.OnClickListener(){ @凌驾 公共void onClick(视图v){ db=c.openOrCreateDatabase(“Student”,Context.MODE_PRIVATE,null); 字符串num=编号[位置]; 游标cc=db.rawQuery(“从详细信息中选择移动设备,其中移动设备='”+num+“'”,null); if(cc.moveToFirst()){ 做{ am=cc.getString(cc.getColumnIndex(“移动”)); }而(cc.moveToNext()); } 意图i=新意图(c,Update.class); i、 putExtra(“值”,am); c、 星触觉(i); } }); 返回列表视图; } }
//它使用“更新”按钮和列表视图中的复选框在列表视图中显示所有数据。“删除”按钮用于删除所有选中的项目。Java 使用适配器类从列表视图中删除选中项并从数据库中删除数据 公共类删除扩展BaseAdapter{ sqlitedb数据库; 字符串am; 私人最终上下文c; 私人最终ArrayList str; 私有最终字符串[]编号; ArrayList检查=新建ArrayList(); 公共删除(上下文c、ArrayList str、字符串[]编号、ArrayList检查){ 这个.c=c; this.str=str; 这个数字=数字; 这个.checks=checks; } @凌驾 public int getCount(){ 返回str.size(); } @凌驾 公共对象getItem(int位置){ 返回null; } @凌驾 公共长getItemId(int位置){ 返回0; } @凌驾 公共视图getView(最终整数位置、视图转换视图、视图组父视图){ LayoutInflater充气器=(LayoutInflater)c.getSystemService(Context.LAYOUT\u充气器\u服务); 视图列表视图; if(convertView==null) { ListView=新视图(c); ListView=充气机充气(右布局按钮,空); TextView TextView=(TextView)ListView.findViewById(R.id.textView6); setText(str.get(position)); } 其他的 { ListView=(视图)convertView; } 按钮btnupdate=(按钮)ListView.findViewById(R.id.button4); //复选框声明 复选框chk=(复选框)ListView.findViewById(R.id.chk1); btnupdate.setOnClickListener(新视图.OnClickListener(){ @凌驾 公共void onClick(视图v){ db=c.openOrCreateDatabase(“Student”,Context.MODE_PRIVATE,null); 字符串num=编号[位置]; 游标cc=db.rawQuery(“从详细信息中选择移动设备,其中移动设备='”+num+“'”,null); if(cc.moveToFirst()){ 做{ am=cc.getString(cc.getColumnIndex(“移动”)); }而(cc.moveToNext()); } 意图i=新意图(c,Update.class); i、 putExtra(“值”,am); c、 星触觉(i); } }); 返回列表视图; } },java,android,sqlite,Java,Android,Sqlite,//它使用“更新”按钮和列表视图中的复选框在列表视图中显示所有数据。“删除”按钮用于删除所有选中的项目。 //删除按钮位于添加列表视图的主活动上。您可以在数据库类中创建一个方法,并传递要删除的表名和条目以及id(如果有)。在单击ListView项时调用该方法 public class delete extends BaseAdapter { SQLiteDatabase db; String am; private final Context c; private final Ar
//删除按钮位于添加列表视图的主活动上。您可以在数据库类中创建一个方法,并传递要删除的表名和条目以及id(如果有)。在单击ListView项时调用该方法
public class delete extends BaseAdapter {
SQLiteDatabase db;
String am;
private final Context c;
private final ArrayList<String> str;
private final String[] number;
ArrayList<Integer> checks=new ArrayList<Integer>();
public delete(Context c, ArrayList<String> str, String[] number, ArrayList<Integer> checks) {
this.c = c;
this.str = str;
this.number = number;
this.checks=checks;
}
@Override
public int getCount() {
return str.size();
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
LayoutInflater inflater= (LayoutInflater) c.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View ListView ;
if(convertView==null)
{
ListView=new View(c);
ListView=inflater.inflate(R.layout.button,null);
TextView textview=(TextView) ListView.findViewById(R.id.textView6);
textview.setText(str.get(position));
}
else
{
ListView=(View)convertView;
}
Button btnupdate=(Button)ListView.findViewById(R.id.button4);
//checkbox declaration
CheckBox chk=(CheckBox)ListView.findViewById(R.id.chk1);
btnupdate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
db=c.openOrCreateDatabase("Student",Context.MODE_PRIVATE, null);
String num = number[position];
Cursor cc=db.rawQuery("select mobile from detail where mobile='"+num+"'", null);
if (cc.moveToFirst()) {
do {
am = cc.getString(cc.getColumnIndex("mobile"));
} while (cc.moveToNext());
}
Intent i=new Intent(c,Update.class);
i.putExtra("value",am);
c.startActivity(i);
}
});
return ListView;
}
}
“问题”中的问题是什么?我想知道如何在listview中从数据库中删除选中的项目。请参阅
SQLiteDatabase\delete
我只想删除选中的项目,也要从数据库中删除。我使用的是自定义的listview。我想没有人会愿意阅读格式如此糟糕的代码。。。用它做点什么
public void deleteEntry(String tableName,String columnName,String id)
{
openDatabase();
database.delete(tableName, columnName + " = ?",new String[] { id });
closeDatabase();
}