我需要用什么参数来输入SQLiteOpenHelper类--AndroidStudio

时间:2018-04-01 02:38:22

标签: java android mobile sqliteopenhelper

我目前正在一个项目中工作,我需要使用按钮删除一个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"上下文可能会给我带来麻烦。是吗?我应该在"()"之间放什么?还有其他问题吗?

告诉你,我不是母语为英语的人,实际上我的英语很差,希望你能理解。

1 个答案:

答案 0 :(得分:0)

或者您也可以使用:

public void deletar (View view){
    Dados_familiaOpenHelper dados_familiaOpenHelper = new Dados_familiaOpenHelper(view.getContext());
    ...
}