Хобрук: Ваш путь к мастерству в программировании

ImageView поверх ImageView в GridView

Я пытаюсь использовать ImageView вместо ImageView в GridView. Я уже нашел этот вопрос Android, ImageView поверх ImageView, и он действительно знаком с моей проблемой, но я хочу использовать этот макет, описанный в вопросе внутри GridView.

Итак, я создал .xml-файл, содержащий <GridView></GridView> (я думаю, это не очень полезно показывать, поэтому я пропущу этот файл) и .xml-файл с макетом, который я хочу использовать в каждой ячейке в представлении сетки. Это следующий файл:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/rl_act_question_list_alternative" >

<ImageView
    android:id="@+id/iv_question_list_country"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:src="@drawable/germany" />

<ImageView
    android:id="@+id/iv_question_list_solved"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:src="@drawable/icon_question_solved" />

As the next step i am creating a subclass of a BaseAdapter overriding the method getView(int position, View convertView, ViewGroup parent) with the following code:

public View getView(int position, View convertView, ViewGroup parent) {
            if (convertView == null) { 
                convertView = LayoutInflater.from(ActivityLevelsAlternative.this).inflate(R.layout.act_question_list_alternative_item, null);
            }

            ImageView mCountry = (ImageView) convertView.findViewById(R.id.iv_question_list_country);
            ImageView mIconSolved = (ImageView) convertView.findViewById(R.id.iv_question_list_solved);

            final VOQuestion question = mLevel.getAllQuestions().get(position);
            mCountry.setImageResource(question.getPicture());
            mIconSolved.setImageResource(mPrefManager.isQuestionSolved(question.getId()) ? R.drawable.icon_question_solved : R.drawable.icon_question_unsolved);

            convertView.setOnClickListener(new OnClickListener() {
                @Override
                public void onClick(View arg0) {
                    Intent i = new Intent(getApplicationContext(), ActivityQuestion.class);
                    i.putExtra(ActivityQuestion.QUESTION_ID, question.getId());
                    ActivityLevelsAlternative.this.startActivity(i);
                }
            });

            return convertView;
        }

Но результат не ожидаемый... см.: http://q63i.img-up.net/Screenshotc656.png

Мой вопрос: как я могу поставить галочку над изображением страны?


Ответы:


1

Попробуйте изменить изображение галочки следующим образом:

<ImageView  
android:id="@+id/iv_question_list_solved"
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:layout_alignTop="@id/iv_question_list_country"
android:layout_alignLeft="@id/iv_question_list_country"
android:layout_alignRight="@id/iv_question_list_country"
android:layout_alignBottom="@id/iv_question_list_country"/>
20.01.2014
  • Сработало, галочка теперь стоит над изображением страны. Но есть ли шанс получить галочку в правом нижнем углу, а не по всему изображению (как на этом рисунке i.stack.imgur.com/5cr7i.jpg)? 21.01.2014
  • Вы можете создать другой макет, который делает нижнее изображение фоном, и поставить изображение галочки над этим макетом, затем вы можете перетащить его в угол 21.01.2014
  • Новые материалы

    Шлюз с лицензией OSS, совместимый с Apollo Federation v2, появится в WunderGraph
    Сегодня мы рады сообщить, что мы сотрудничаем с поддерживаемой YC Tailor Technologies, Inc. для внедрения Apollo Federation v2. Реализация будет лицензирована MIT (Engine) и Apache 2.0..

    Это оно
    Ну, я официально уволился с работы! На этой неделе я буду лихорадочно выполнять последние требования Думающего , чтобы я мог сосредоточиться на поиске работы. Что именно это значит?..

    7 полезных библиотек JavaScript, которые вы должны использовать в своем следующем проекте
    Усильте свою разработку JavaScript Есть поговорка «Не нужно изобретать велосипед». Библиотеки — лучший тому пример. Это поможет вам написать сложные и трудоемкие функции простым способом...

    Базовое руководство по переносу концепций обучения в глубокое обучение
    Обзор По мере того, как машинное обучение становится все более мощным и продвинутым, модели, обеспечивающие эту расширенную возможность, становятся все больше и начинают требовать огромного..

    C в C.R.U.D с использованием React-Redux
    Если вы использовали React, возможно, вы знакомы с головной болью, связанной с обратным потоком данных. Передача состояния реквизитам от родительских компонентов к дочерним компонентам может..

    5 обязательных элементов современного инструмента конвейера данных
    В цифровом мире предприятия используют конвейеры данных для перемещения, преобразования и хранения огромных объемов данных. Эти конвейеры составляют основу бизнес-аналитики и играют..

    Случай использования npm3 вместо npm2 для разработки библиотеки
    Некоторое время назад я создал библиотеку на NodeJS, чтобы упростить рендеринг на стороне сервера и клиента. Он использует React и React Router для отображения соответствующего HTML на веб-сайте...