问题描述
|
我试图在单击按钮时在listactivity中创建一个数据库。但是我遇到了一个错误
方法
openorCreateDatabase(String,int,
为new类型未定义)
View.OnClickListener(){} \“和
\“ DefaultDBHelper无法解析。
有什么办法可以在listactivity中这样做吗?请帮忙 !!!
我的代码:
reset.setonClickListener(new OnClickListener()
{
private int count;
@Override public void onClick(View v)
{
sqliteDatabase myDB = this.openorCreateDatabase(MY_DATABASE_NAME,sqliteDatabase.OPEN_READWRITE,null);
try
{
/* Create the Database (no Errors if it already exists) */
// myDB = dbHelper.getWritableDatabase();
// dbHelper.onCreate(myDB);
myDB.execsql(\"CREATE TABLE IF NOT EXISTS \"
+ DefaultDBHelper.MY_DATABASE_TABLE
+ \" (LastName VARCHAR,FirstName VARCHAR,\"
+ \" Country VARCHAR,Age INT(3));\");
myDB.execsql(\"INSERT INTO \"
+ DefaultDBHelper.MY_DATABASE_TABLE
+ \" (LastName,FirstName,Country,Age)\"
+ \" VALUES (\'name\',\'title\',\'country\',20);\");
}
catch (sqliteException e) {
}
finally {
if (myDB != null)
myDB.close();
}
}
});
解决方法
你只是像这样更改代码
SQLiteDatabase myDB = getBaseContext().openOrCreateDatabase(MY_DATABASE_NAME,SQLiteDatabase.OPEN_READWRITE,null);
我认为这会帮助你
, reset.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
SQLiteDatabase myDB =openOrCreateDatabase(\"DB_NAME\",MODE_WORLD_WRITEABLE,null);
}
});
下面的代码将起作用,我已经对其进行了测试。\'this \'指的是您在那里创建的OnClickListener对象,这会导致编译错误。取出\'this \'将解决问题