我目前正在一个项目中工作,我需要使用按钮删除一个SQLiteDatabase。
所以,我打电话给onClick" deletar"在按钮上:
public void deletar (View view){
Dados_familiaOpenHelper dados_familiaOpenHelper = new Dados_familiaOpenHelper(null);
dados_familiaOpenHelper.delete();
}
这是活动" secundario",我的按钮来自。
所以,我有这个课程:
public class Dados_familiaOpenHelper extends SQLiteOpenHelper {
public Dados_familiaOpenHelper(Context context){
super(context, "Dados_familia", null, 6);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(ScriptDLL.getCreateTableCliente() );
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {}
public void delete (){
SQLiteDatabase db = getWritableDatabase();
db.execSQL("DELETE FROM CLIENTE");
db.close();
}
}
而且,如你所见,在课程结束时,我有方法"删除",这是由方法调用" deletar"在另一堂课。
问题在于,当我运行我的应用程序并按下按钮时,应用程序会崩溃并关闭。其中一个可能的问题是方法" deletar"我正在使用:
Dados_familiaOpenHelper(null);
" Null"上下文可能会给我带来麻烦。是吗?我应该在"()"之间放什么?还有其他问题吗?
告诉你,我不是母语为英语的人,实际上我的英语很差,希望你能理解。
答案 0 :(得分:0)
或者您也可以使用:
public void deletar (View view){
Dados_familiaOpenHelper dados_familiaOpenHelper = new Dados_familiaOpenHelper(view.getContext());
...
}