当我点击listview行上的完整按钮时,我必须将数据从任务表移动到task_complete表中。我不知道如何在dbhelper和onclick按钮上编码。这是我的一些代码。请帮帮我。
这是我的dbhelper中的代码
private static final String CREATE_QUERYTASK =
"CREATE TABLE "+ UserData.NewTaskInfo.TABLE_NAME+ "("
+ UserData.NewTaskInfo.ID + " INTEGER PRIMARY KEY," + UserData.NewTaskInfo.TITLE+" TEXT,"+
UserData.NewTaskInfo.DUEDATE+" TEXT,"+ UserData.NewTaskInfo.TIME_SUBMISSION+" TEXT,"+
UserData.NewTaskInfo.DIFFICULTY+" TEXT,"+ UserData.NewTaskInfo.ASSESSMENTMARK+" TEXT);";
private static final String CREATE_QUERYTASKCOMPLETE =
"CREATE TABLE "+ UserDataComplete.CompleteTaskInfo.TABLE_NAME+ "("
+ UserDataComplete.CompleteTaskInfo.ID_COMPLETE + " INTEGER PRIMARY KEY," + UserDataComplete.CompleteTaskInfo.TITLE_COMPLETE+" TEXT,"+
UserDataComplete.CompleteTaskInfo.DUEDATE_COMPLETE+" TEXT,"+ UserDataComplete.CompleteTaskInfo.TIME_SUBMISSION_COMPLETE+" TEXT,"+
UserDataComplete.CompleteTaskInfo.DIFFICULTY_COMPLETE+" TEXT,"+ UserDataComplete.CompleteTaskInfo.ASSESSMENTMARK_COMPLETE+" TEXT);";
@Override
public void onCreate(SQLiteDatabase db) {
//create required tables
db.execSQL(CREATE_QUERYTASK);
db.execSQL(CREATE_QUERYTASKCOMPLETE);
Log.e("DATABASE OPERATIONS", "Table created...");
}
public void completeTask(String comptitle,String compduedate,String comptimesubsmission, String compdifficulty, String compassessmentmark,SQLiteDatabase sqLiteDatabase)
{
}
我的StatusActivity中的此代码
TaskTitle=(TextView) findViewById(R.id.title);
TaskDuedate=(TextView) findViewById(R.id.duedate);
TaskTimeSubmission=(TextView) findViewById(R.id.time_submission);
TaskDifficulty=(TextView) findViewById(R.id.difficulty);
TaskMark=(TextView) findViewById(R.id.assessmentmark);
completeButton = (Button)findViewById(R.id.completebutton);
listview=(ListView) findViewById(R.id.list_view);
listDataAdapter=new ListDataAdapter(getApplicationContext(),R.layout.row_layout);
listview.setAdapter(listDataAdapter);
userDBHelper=new UserDbHelper(getApplicationContext());
sqLiteDatabase=userDBHelper.getReadableDatabase();
cursor=userDBHelper.getInformation(sqLiteDatabase);
if (cursor.moveToFirst()) {
do {
String title, duedate, time_submission, time_completion, carrymark;
title = cursor.getString(0);
duedate = cursor.getString(1);
time_submission = cursor.getString(2);
time_completion = cursor.getString(3);
carrymark = cursor.getString(4) + "% Mark";
DataProvider dataProvider = new DataProvider(title, duedate, time_submission, difficulty, assessmentmark);
listDataAdapter.add(dataProvider);
} while (cursor.moveToNext());
}
}
public void completeTask(View view)
{
String title = TaskTitle.getText().toString();
String duedate = TaskDuedate.getText().toString();
String time_submission = TaskTimeSubmission.getText().toString();
String difficulty = TaskDifficulty.getText().toString();
String assessmentmark = TaskMark.getText().toString();
userDBHelper = new UserDbHelper(context);
sqLiteDatabase = userDBHelper.getReadableDatabase();
userDBHelper.completeTask(title,duedate,time_submission,difficulty,assessmentmark,sqLiteDatabase);
Toast.makeText(getBaseContext(),"Task complete",Toast.LENGTH_LONG).show();
}
答案 0 :(得分:0)
您可以使用ContentValues将数据插入数据库
public void completeTask(String comptitle,String compduedate,String comptimesubsmission, String compdifficulty, String compassessmentmark,SQLiteDatabase sqLiteDatabase)
{
SQLiteDatabase db = sqLiteDatabase.getWritableDatabase();
Content values = new ContentValues();
values.put("@ColumnName", @value);
指定列名| @ColumnName |和你的价值| @value |
db.insert("@TableName", null, values);
sqLiteDatabase.close();
};