'How do I get the value of column gender in SQLite to set an image (male or female character)? Android Studio
I want to get the value of column gender in SQLite and set an image of a male or female character.
This is what I have tried so far. Whenever I run the code, it shows a female character even if I choose male character.
This is the GenderSelectionActivity.
ImageViewBoy.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
GenderHolder="Male";
sqLiteDatabase = sqLiteHelper.getWritableDatabase();
sqLiteDatabase.execSQL("UPDATE "+ SQLiteHelper.TABLE_NAME +" SET "+ SQLiteHelper.Table_Column_2_Gender +" = '"+GenderHolder+"' WHERE "+ SQLiteHelper.Table_Column_ID +" = (SELECT max(" + SQLiteHelper.Table_Column_ID +") FROM " + SQLiteHelper.TABLE_NAME + ")");
}
});
ImageViewGirl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
GenderHolder="Female";
sqLiteDatabase = sqLiteHelper.getWritableDatabase();
sqLiteDatabase.execSQL("UPDATE "+ SQLiteHelper.TABLE_NAME +" SET "+ SQLiteHelper.Table_Column_2_Gender +" = '"+GenderHolder+"' WHERE "+ SQLiteHelper.Table_Column_ID +" = (SELECT max(" + SQLiteHelper.Table_Column_ID +") FROM " + SQLiteHelper.TABLE_NAME + ")");
}
});
This is the MainMenuActivity
ImageView profile = (ImageView) findViewById(R.id.imageView);
sqLiteDatabase = sqLiteHelper.getReadableDatabase();
Cursor cursor;
cursor = sqLiteDatabase.rawQuery("SELECT " + SQLiteHelper.Table_Column_2_Gender + " FROM " + SQLiteHelper.TABLE_NAME + " ORDER BY " + sqLiteHelper.Table_Column_ID + " DESC LIMIT 1", null);
cursor.getColumnIndex(SQLiteHelper.Table_Column_2_Gender);
if (SQLiteHelper.Table_Column_2_Gender.equals("Male")){
profile.setImageResource(R.drawable.user_boy);
} else {
profile.setImageResource(R.drawable.user_girl);
}
profile.getLayoutParams().height = 100;
profile.getLayoutParams().width = 100;
return cursor;
}
Any help you can give would be greatly appreciated.
Solution 1:[1]
I have done my research and got the answer that I needed.
public Cursor DisplayProfile(){
ImageView profile = (ImageView) findViewById(R.id.imageView);
sqLiteDatabase = sqLiteHelper.getReadableDatabase();
Cursor cursor;
String gender = new String();
cursor = sqLiteDatabase.rawQuery("SELECT " + SQLiteHelper.Table_Column_2_Gender + " FROM " + SQLiteHelper.TABLE_NAME + " ORDER BY " + sqLiteHelper.Table_Column_ID + " DESC LIMIT 1", null);
if (cursor.moveToFirst()) {
do {
gender = cursor.getString(cursor.getColumnIndex(SQLiteHelper.Table_Column_2_Gender));
}
while (cursor.moveToNext());
cursor.close();
}
if (gender.equals("Male")){
profile.setImageResource(R.drawable.user_boy);
} else {
profile.setImageResource(R.drawable.user_girl);
}
profile.getLayoutParams().height = 100;
profile.getLayoutParams().width = 100;
return cursor;
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 |
