Как сохранить изображение на прозрачном фоне? - PullRequest
0 голосов
/ 21 сентября 2018

Я хочу добиться следующего.Прозрачный фон с белой галочкой Как получить белую галочку на прозрачном фоне.я попробовал следующее.

viewprev = mgridview.getChildAt(i - mgridview.getFirstVisiblePosition());
                viewprev.setBackgroundColor(Color.WHITE);
                viewprev.setAlpha(0.5f);

Ответы [ 3 ]

0 голосов
/ 21 сентября 2018

Сначала вам нужно добавить ImageView к вашему элементу сетки.Не забудьте вставить тег XML ниже основного изображения сетки, чтобы появиться сверху.Затем используйте match_parent в качестве ширины и высоты просмотра изображения и присвойте scaleType по центру.Это ваша галочка.Вы можете добавить полупрозрачный фон, чтобы создать тень над изображением элемента сетки, и атрибут src будет отмечен галочкой.

Вы также можете изменить видимость представления изображения, чтобы скрыть и показать галочку.пункт.

0 голосов
/ 22 сентября 2018

Попробуйте,

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">

<ImageView
    android:id="@+id/ivMain"
    android:layout_width="200dp"
    android:layout_height="200dp"
    android:contentDescription="@string/app_name"
    android:src="@mipmap/ic_launcher"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<FrameLayout
    android:layout_width="150dp"
    android:layout_height="150dp"
    android:background="#99676767"
    app:layout_constraintBottom_toBottomOf="@id/ivMain"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="@id/ivMain">

    <ImageView
        android:layout_width="55dp"
        android:layout_height="55dp"
        android:layout_gravity="center"
        android:contentDescription="@string/app_name"
        android:src="@drawable/vector_favorite" />
</FrameLayout>

Ваш тик должен быть в FrameLayout, который должен быть ограничен, как в коде, поэтому он всегда находится в середине ImageView,По изображению, я думаю, вы пытаетесь создать длинный щелчок, чтобы выбрать что-то вроде предметов.Если это так, просто установите видимость FrameLayout в gone в xml и в событии LongClick установите его в visible

Это результат вышеприведенного кода:

output

Вы можете поиграть с цветом, чтобы достичь желаемого уровня прозрачности

0 голосов
/ 21 сентября 2018

Вам может понадобиться использовать FrameLayout. Framelayout содержит ваше изображение и пустой ImageView над ним.Когда вам нужно нарисовать галочку - просто установите его изображение в этом ImageView.

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