Альфа-градиент на Android
Мне нужно создать альфа-градиент на краю ImageView. Предпочтительно использовать только XML.
Изображение, например,
Ответы
Ответ 1
Здесь решение
изображение выглядит следующим образом
![enter image description here]()
для этого:
- Подготовить форму для рисования
Рез/рисуем/gradient_shape.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#00FFFFFF"
android:endColor="#FFFFFFFF"
android:type="linear" />
</shape>
Определить макет: activity_main.xml:
<ImageView
android:id="@+id/photo"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/photo"
android:src="@drawable/gradient_shape" />
здесь drawable/photo - это просто jpeg в папке drawables
ИЗМЕНИТЬ
для получения дополнительной информации см. этот Учебник
Ответ 2
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:startColor="#00FFFFFF"
android:endColor="#FFFFFFFF"
android:type="linear" />
</shape>
совершенная трансперенситивность. Убедитесь, что градиент "Вид ниже" находится внизу и не только касается формы "Градиентная форма".
Если у вас есть основной RelativeLayout, ListView и Просмотр (фон: градиент)
убедитесь, что Градиентный просмотр находится сверху, списка ListView, а не стороны. Если ваш градиент в стороне, он будет прозрачным с помощью RelativeLayout Цвет фона, а не ListView.
Надеюсь, ты поймешь, что я хочу сказать.
Ответ 3
Для прозрачности:
android:startColor="@null"
Или вы можете использовать 8-значный шестнадцатеричный цвет, например:
android:startColor="#FF000000"
Первые два FF для альфа цвета, 00 полностью прозрачный и непрозрачный FF