Я новичок в Java Coding, и это мой первый раз с использованием SQLiteOpenHelper в Android. У меня проблема с извлечением фруктов из таблицы, используя цвета, введенные в MainActivity.(Отредактировано) Извлечение в SQLiteOpenHelper для Android
В приложении есть 2 поля. 1. Цвета 2. Фрукты
Например, если пользователь вводит: цвета - красный & фрукты - клубника
Вертушка покажет клубнику. Но в то же время, счетчик должен включать фрукты, которые были введены ранее на основе цвета: красный.
Ниже приведены фрагменты моих кодов. Пожалуйста, предложите мне, что делать. Спасибо.
MainActivity
btnAdd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
String fruits= inputFruits.getText().toString();
String colours= inputColours.getText().toString();
if (fruits.trim().length() > 0) {
// database handler
DatabaseHandler db = new DatabaseHandler(
getApplicationContext());
// inserting new label into database
db.insertLabel(fruits, colours);
// making input filed text to blank
inputFruits.setText("");
// Hiding the keyboard
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(inputLabel.getWindowToken(), 0);
// loading spinner with newly added data
loadSpinnerData();
} else {
Toast.makeText(getApplicationContext(), "Please enter label name",
Toast.LENGTH_SHORT).show();
}
}
});
SQLiteOpenHelper
public void insertLabel(String fruits, String colours){
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_FRUITS, fruits);
values.put(KEY_COLOURS, colours);
// Inserting Row
db.insert(TABLE_LABELS, null, values);
db.close(); // Closing database connection
}
public List<String> getAllLabels(){
List<String> labels = new ArrayList<String>();
// Select All Query
String selectQuery = "SELECT" + KEY_FRUITS + "FROM" + TABLE_LABELS + " WHERE COLOURS = " + KEY_COLOURS;
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.rawQuery(selectQuery, null);
// looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
labels.add(cursor.getString(1));
} while (cursor.moveToNext());
}
Неа, он не работал.): – redblackwhite
';' требуется по стандарту SQL, но необязательно в SQLite. –
привет, я отредактировал вопрос. пожалуйста, взгляните и посоветуйте мне, что делать. Спасибо. – redblackwhite