Настройка базы данных Android ImageView - PullRequest
2 голосов
/ 03 октября 2010

У меня есть база данных с 5 столбцами, 1 столбец, который является ТЕКСТОМ с именем нарисованной папки / res / drawable.

    private void fillData() {

    mCursor = db2.getAllAchievements();
    startManagingCursor(mCursor);


    String[] from = new String[]{achHelper.ROW_NAME, achHelper.ROW_DESCRIPTION, achHelper.ROW_POINTS, achHelper.ROW_TROPHY};


    int[] to = new int[]{R.id.achTitle, R.id.achDescription, R.id.achPoints, R.id.trophy};

    SimpleCursorAdapter classes =
            new SimpleCursorAdapter(this, R.layout.ach_row, mCursor, from, to);
    setListAdapter(classes);
}

R.id.trophy - это ImageView, какя могу установить фоновое изображение на основе данных, которые извлекаются из achHelper.ROW_TROPHY?

1 Ответ

3 голосов
/ 02 июля 2012

для simpleCursorAdapter нужны Strings, поэтому ваш StringArray "from" должен получать объекты String из столбца achHelper.ROW_TROPHY, когда вы настраиваете свою базу данных, он должен выглядеть так:Для входа в вашу базу данных вы должны преобразовать идентификатор вашего TropyImage (что целое число) R.drawable.yourTropyImage в строку:

ContentValues cv = new ContentValues();
cv.put( your other columns, your other input);
cv.put(ROW_TROPHY, Integer.toString(R.drawable.yourTrophyImage));

return db.insert(DATABASE_TABLE, null, cv);

Ваши String[] from, int[] to и simpleCursorAdapter кажутся правильнымиВы просто должны иметь правильный DataType и ID в столбце ROW_TROPY.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...