我正在使用sqlite數據庫,我被遊標卡住,我無法弄清楚這個錯誤,這裏是它在Logcat中顯示的完整錯誤。我的Android代碼的光標級錯誤
問題:java.lang.IllegalStateException:無法從CursorWindow讀取第0行,第1列。在從中訪問數據之前,確保Cursor已正確初始化。
和我的代碼是這樣的:
這裏是我的主要活動代碼:
public class MainActivity extends AppCompatActivity {
EditText inputBox;
EditText inputNameBox;
TextView display;
dbHelper myHelper;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
inputBox =(EditText)findViewById(R.id.inputBox);
inputNameBox=(EditText)findViewById(R.id.inputName);
display=(TextView) findViewById(R.id.display);
myHelper=new dbHelper(this, null, null, 1);
printDatabase();
}
public void printDatabase(){
String dbString=myHelper.dataBaseToString();
display.setText(dbString);
inputBox.setText("");
inputNameBox.setText("");
}
public void addOnclick(View view) {
Job job=new Job(inputBox.getText().toString(),inputNameBox.getText().toString());
myHelper.addJob(job);
printDatabase();
}
public void deleteOnClick(View view) {
String input=inputBox.getText().toString();
myHelper.deleteJob(input);
printDatabase();
}
}
,這裏是我的其他類的工作:
public class Job {
private int _id;
private String jobName;
private String description;
//empty constructor
public Job() {
}
public Job(String name)
{
this.jobName=name;
}
public Job(String name,String description) {
this.jobName=name;
this.description = description;
}
public Job(int id,String name, String description) {
this._id = id;
this.jobName=name;
this.description = description;
}
public String getName() {
return jobName;
}
public void setName(String name) {
this.jobName = name;
}
public int getId() {
return _id;
}
public void setId(int id) {
this._id = id;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
}
有任何行號登錄? –