Простыми конструкторами вроде пользоваться умею, если наследуется не получается.
public class DatabaseHelper extends SQLiteOpenHelper {
public static final String DBNAME = "sample.sqlite";
public static final String DBLOCATION = "/data/data/plitkurs4.ru.arab/databases/";
private Context mContext;
private SQLiteDatabase mDatabase;
public DatabaseHelper(Context context) {
super(context, DBNAME, null, 1);
this.mContext = context;
}
@Override
public void onCreate(SQLiteDatabase db) {
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
public void openDatabase() {
String dbPath = mContext.getDatabasePath(DBNAME).getPath();
if(mDatabase != null && mDatabase.isOpen()) {
return;
}
mDatabase = SQLiteDatabase.openDatabase(dbPath, null, SQLiteDatabase.OPEN_READWRITE);
}
public void closeDatabase() {
if(mDatabase!=null) {
mDatabase.close();
}
}
public List<Product> getListProduct() {
Product product = null;
List<Product> productList = new ArrayList<>();
openDatabase();
Cursor cursor = mDatabase.rawQuery("SELECT * FROM PRODUCT" , null);
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
product = new Product(cursor.getInt(0), cursor.getString(1), cursor.getString(3), cursor.getString(2),cursor.getInt(4),cursor.getInt(5));
productList.add(product);
cursor.moveToNext();
}
cursor.close();
closeDatabase();
return productList;
}
}
Есть класс DatabaseHelper нужно в конструкторе задать изменение базы данных PRODUCT, как я понял в место нее переменную подставить нужно, но дальше не получается как это вставить?
Чтобы при обращении изменять в выводе в другом классе Book_Activity_detal.
private DatabaseHelper mDBHelper;
mProductList = mDBHelper.getListProduct(); - чтобы сюда задавать вместо PRODUCT другое.