DBからいくつかのカテゴリを取得するCursor
がありますが、DBにないカテゴリを手動で追加する必要があるため、すべてをでレンダリングできますListViewActivity
。カテゴリを取得する方法は次のとおりです。
Cursor categories = myDbHelper.getCategoriesCursor(
categorySelected, Tools.getLanguage());
startManagingCursor(categories);
CategoriesCursorAdapter categoriesAdapter = new CategoriesCursorAdapter(
getApplicationContext(), categories);
setListAdapter(categoriesAdapter);
ArrayList<String>
必要なフィールドを使用して新しいものを作成して渡すことを考えましたAdapter
が、それでも、それらの値を取得してcategories
リストに追加することはできません。
どうすればこれを行うことができますか?
よろしくお願いします
編集:これは「myDatabaseHelper」のカテゴリを取得するためのメソッドです
public Cursor getCategoriesCursor(int parentId, int language) {
try {
String sql = "";
if (parentId == 0) {
sql = "SELECT 0 as '_id', 'Agenda' as 'name_category', 0 as 'sort' UNION ALL SELECT categories._id, name_categories.name_category, categories.sort "
+ "FROM categories JOIN name_categories ON categories._id = name_categories.category_id "
+ "WHERE categories.parent_id = " + parentId
+ " AND name_categories.language_id = " + language + " ORDER BY sort";
} else {
sql = "SELECT categories._id, name_categories.name_category "
+ "FROM categories JOIN name_categories ON categories._id = name_categories.category_id "
+ "WHERE categories.parent_id = "
+ parentId
+ " AND name_categories.language_id = " + language + " ORDER BY sort";
}
Log.d("XS2TheWorld", sql);
return myDataBase.rawQuery(sql, null);
} catch (Exception e) {
try {
copyDataBase();
} catch (IOException e1) {
e1.printStackTrace();
}
return getCategoriesCursor(parentId, language);
}
}