私は自分のAnaMenuアクティビティでlistviewをカスタマイズしました。このリストビューはデータベースのデータによって作成されています。私はデータベース内のすべてのデータを削除しようとしており、MainActivityに行きたいと思っています。アクションバーのロゴをクリックすると、すべてのデータが削除されますが、試してみるとエラーメッセージが表示されます。私のデータベースには4つの列があります。別の重要なことがあります:私のAnaMenuアクティビティにはこれがあります。 (私のMainActivityで。)カスタムアダプターの使用中にデータベースのデータを削除する方法は?
mDatabaseHelper = new DatabaseHelper(this);
Cursor data = mDatabaseHelper.getData();
sayı = data.getCount();
if (sayı > 4){
Intent i = new Intent(MainActivity.this,AnaMenu.class); startActivity(i);
MainActivity.this.finish();
}
(私のAnaMenu活動で)私のカスタムアダプタを作成する方法:
これを
while(data.moveToNext()){
listDataId.add(data.getString(0));
listData.add(data.getString(1));
listDatanumber.add(data.getString(2));
listDataoran.add(data.getString(3));
}
liste.setAdapter(oyunTextView);
}
class OyunTextView extends BaseAdapter {
@Override
public int getCount() {
return listData.size();
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
convertView = getLayoutInflater().inflate(R.layout.oyuntextview, null);
TextView namesbox = (TextView) convertView.findViewById(R.id.isim);
sayılar = (TextView) convertView.findViewById(R.id.sayı);
namesbox.setText(listData.get(position));
sayılar.setText(listDataoran.get(position));
return convertView;
}
}
私のデータベース方法:
public void deleteAllName(int id, String name ,String numara, String oran){
SQLiteDatabase db = this.getWritableDatabase();
String query = "DELETE FROM " + TABLE_NAME + " WHERE "
+ COL1 + " = '" + id + "'" + COL2 + " = '" + name + COL3 + " = '"+ numara +
" AND " + COL4 + " = '" + oran + "'";
Log.d(TAG, "deleteName: query: " + query);
Log.d(TAG, "deleteName: Deleting " + name + " from database.");
db.execSQL(query);
}
それは、ロゴアイコンの私のコードです:あなたは、あなたのマッチング値の間AND
条件を追加する必要があり、また、'" + name
private void geri() {
for (int d = 0 ; d<listDatanumber.size() ; d++) {
int id = Integer.parseInt(listDataId.get(d));
String isim = listData.get(d);
String number = listDatanumber.get(d);
String oran = listDataoran.get(d);
mDatabaseHelper.deleteAllName(id,isim,number,oran);
}
Intent ii = new Intent(AnaMenu.this, MainActivity.class);
startActivity(ii);
AnaMenu.this.finish();
}
とすることができます。 –