以下のデータベース ハンドラ ファイルから特定の削除機能を使用したいと考えています。私がそれを実装しているとき、 javaNullpointerException が来ています。私は間違いなく何かが欠けています。
削除機能:
// Deleting single contact
public void deleteContact(Contact contact) {
SQLiteDatabase db = this.getWritableDatabase();
db.delete(TABLE_CONTACTS, KEY_ID + " = ?",new String[] { String.valueOf(contact.getID()) });
db.close();
}
私は次のように使用しようとしています:
DatabaseHandler db = new DatabaseHandler(this);
Contact pm = null;
Intent i;
i = getIntent();
pm._id= i.getExtras().getInt("id");
pm._name = i.getExtras().getString("name");
pm._phone_number = i.getExtras().getString("phone_number");
// **Some problem is here I am not getting it
db.deleteContact(pm);
Toast.makeText(getApplicationContext(),"Deleted..",Toast.LENGTH_SHORT).show();
ログキャット:
08-19 01:15:00.726: E/AndroidRuntime(12657): FATAL EXCEPTION: main
08-19 01:15:00.726: E/AndroidRuntime(12657): java.lang.NullPointerException
08-19 01:15:00.726: E/AndroidRuntime(12657): at com.parth.targetthebudget.ViewContact$ListAdapter$2$1.onClick(ViewContact.java:151)
08-19 01:15:00.726: E/AndroidRuntime(12657): at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:163)
08-19 01:15:00.726: E/AndroidRuntime(12657): at android.os.Handler.dispatchMessage(Handler.java:99)
08-19 01:15:00.726: E/AndroidRuntime(12657): at android.os.Looper.loop(Looper.java:130)
08-19 01:15:00.726: E/AndroidRuntime(12657): at android.app.ActivityThread.main(ActivityThread.java:3687)
08-19 01:15:00.726: E/AndroidRuntime(12657): at java.lang.reflect.Method.invokeNative(Native Method)
08-19 01:15:00.726: E/AndroidRuntime(12657): at java.lang.reflect.Method.invoke(Method.java:507)
08-19 01:15:00.726: E/AndroidRuntime(12657): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
08-19 01:15:00.726: E/AndroidRuntime(12657): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
08-19 01:15:00.726: E/AndroidRuntime(12657): at dalvik.system.NativeStart.main(Native Method)