错误:类SQLiteDatabase中的构造函数SQLiteDatabase不能为 适用于给定的类型;必需:未找到参数:MainActivity 原因:实际和正式论据列表的长度不同
它在行上显示错误:
sqLiteDatabase=new SQLiteDatabase(this);
错误
这是我主要活动中的代码
package com.notify.fahadkhan.myapplication;
import android.database.sqlite.SQLiteDatabase;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
EditText edt1,edt2;
Button btn1,btn2,btn3,btn4;
private database database;
private SQLiteDatabase sqLiteDatabase;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// this line has been generated an error
sqLiteDatabase=new SQLiteDatabase(this);
btn1=findViewById(R.id.btnin);
btn2=findViewById(R.id.btndel);
btn3=findViewById(R.id.btnup);
btn4=findViewById(R.id.btnview);
edt1=findViewById(R.id.edt1);
edt2=findViewById(R.id.edt2);
btn1.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId())
{
case R.id.btnin:
String firstname=edt1.getText().toString();
String lastname=edt2.getText().toString();
sqLiteDatabase.insertStdudent(firstname,lastname);
break;
}
}
}
我在出现错误的地方添加了评论。
> SQLiteDatabase is not public and it cannot be accessed outside the
> package.
我在代码中到处都检查过,它是公开的。我是android中的数据库新手。任何人都可以在这方面帮助我。
答案 0 :(得分:1)
没有public
的{{1}}构造函数。您不使用构造函数创建实例。您可以通过在SQLiteDatabase
上调用static
方法(例如SQLiteDatabase
)或使用其他为您完成此操作的类(例如openOrCreateDatabase()
)来获取实例。 / p>
the documentation中对此进行了简要介绍。许多有关Android应用程序开发的书籍和课程也介绍了此内容。