samedi 21 mars 2015

Unable to delete task from sqlite database

I am trying to create a delete function for my app. Currently I have created half of the coding, but I dont know how to get delete my row using my movie title.


This is my Java code:



package com.example.moviemanager;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.EditText;

public class DeleteMovie extends Activity{
private Long rowID;
private EditText edtdeleteMovie;

final DatabaseHandler dh = new DatabaseHandler(DeleteMovie.this);


protected void onCreate(Bundle save){
super.onCreate(save);
setContentView(R.layout.deletemoviemenu);

edtdeleteMovie = (EditText)findViewById(R.id.edtDelete);

Bundle extras = getIntent().getExtras();
if(extras != null){
rowID = extras.getLong("row_id");
edtdeleteMovie.getText();


}
}

@Override
protected void onResume(){
super.onResume();
deleteMovie();
}

private void deleteMovie(){
AlertDialog.Builder builder = new AlertDialog.Builder(DeleteMovie.this);
builder.setTitle("Delete Task");
builder.setTitle("Are you sure to delete this?");

builder.setPositiveButton("Delete", new DialogInterface.OnClickListener() {


@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
AsyncTask<Long, Object, Object>deleteMovie = new AsyncTask<Long, Object, Object>(){
@Override
protected Object doInBackground(Long... params){
dh.deleteRow(params[0]);
return null;
}

@Override
protected void onPostExecute(Object result){
finish();
}
};
deleteMovie.execute(new Long[] {rowID});
}
}
);

builder.setNegativeButton("Cancel", null);
builder.show();

}


}


This is the DatabaseHandler code:



public boolean deleteRow(long rowId){
String where = KEY_ROWID + "=" + rowId;
return db.delete(DATABASE_TABLE, where, null) != 0;
}


I tried searching on the internet but i cant find any solution. It would be great if someone can help me with it.


Aucun commentaire:

Enregistrer un commentaire