ここに私の問題があります。バインドとイテレータに影響を与えずに、SQLiteStatementを単一のクラスに使用する挿入クエリをどのように置くことができますか?これまで私が進めてきた進歩があります。データベースはMainActivityにありますが、すべてのクエリをクラス内に配置します。データベースクエリを単一のクラスに入れる方法
btnSave = (Button) findViewById(R.id.btnSaveAlbum);
btnSave.setOnClickListener(new View.OnClickListener() {
@TargetApi(Build.VERSION_CODES.JELLY_BEAN)
@Override
public void onClick(View v) {
txtTitle = (EditText) findViewById(R.id.txtAlbumTitle);
String title = txtTitle.getText().toString();
if (requestCode == 200 && resultCode == Activity.RESULT_OK) {
String[] apath = data.getStringArrayExtra("all_path");
ArrayList<String> strings = new ArrayList<String>();
Iterator iterate = strings.iterator();
for (String string : apath) {
strings.add(string);
}
String query = "INSERT INTO " + TBNAME + " VALUES (?,?);";
SQLiteStatement statement = timedb.compileStatement(query);
timedb.beginTransaction();
while (iterate.hasNext()) {
statement.clearBindings();
statement.bindString(1, title);
statement.bindString(2, iterate.next().toString());
statement.execute();
}
timedb.setTransactionSuccessful();
timedb.endTransaction();
timedb.close();
Toast.makeText(MainActivity.this, "Successful", Toast.LENGTH_LONG).show();
}
}
});
ベストな方法を –
@DrilonBlakqoriイテレータとバインディングに影響を与えずにシングルトンクラスにどのように入れることができますか?それでも、私は何も手掛かりがありません –
シングルトンクラスで作成した関数に 'apath'、' title'オブジェクトを渡し、イテレータとバインディングからなるコードの残りの部分をその関数に書くだけです –