Intereting Posts
ADB не распознает мое устройство Redmi Note Есть ли способ иметь общий раздел с buildConfigField и resValue в градиенте? Как установить другую тему в макет Запись / Geotag JPEG (данные EXIF) в Android Обратные вызовы удаленных служб Android AppBarLayout с контейнером FrameLayout в качестве прокручиваемого содержимого не работает Полный список Cocos2d-x Tutorial & Guide List Исчезающие кнопки панели действий при прокрутке фрагментов Изменить цвет текста элемента навигации Какие типы файлов шрифтов поддерживает Android? Получение ошибок «EnclosingMethod» при создании в Android Studio 2 Android Spinner с несколькими вариантами выбора Android EditText, минус, преобразованный в точечное событие, но inputType = "number | numberSigned | numberDecimal" Прозрачная деятельность открывается по основной деятельности. Как открыть его не по основной деятельности? Android – КоординаторLayout / NestedScrollView / Скрыть панель инструментов / Проблема с WebView

Наложение над ImageView на Android

Поэтому у меня есть список изображений, которые поступают из Интернета, я не знаю, какой цвет они, и я хочу поместить текст через ImageView.

Моя идея – разместить ImageView, наложение изображений с градиентом прозрачности над этим ImageView и над ним над текстом. Я хочу подражать этому поведению:

Введите описание изображения здесь

Есть ли способ сделать это через XML?

Solutions Collecting From Web of "Наложение над ImageView на Android"

Когда вы пишете xml для своих списков, которые накапливаются в getView (…) любого ListAdapter вами ListAdapter , вы можете это сделать.

Что-то вроде этого для listitem:

 <?xml version="1.0" encoding="utf-8"?> 

 <ImageView android:layout_width="320dp" android:layout_height="240dp" android:background="#ACACAC" "/> <RelativeLayout android:layout_width="320dp" android:layout_height="240dp" android:background="@drawable/gradient"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Here is your text" android:textColor="#000000" android:layout_alignParentBottom="true"/> </RelativeLayout> 

Затем вы создаете этот drawable / gradient. Для этого вы можете перерабатывать ответ ЗДЕСЬ

Благодаря adityajones мне удалось добраться туда 🙂 Итак, хотя это мой правильный ответ, я буду отмечать его как правильный!

 <?xml version="1.0" encoding="utf-8"?> 

 <ImageView android:layout_width="fill_parent" android:layout_height="200dp" android:scaleType="centerCrop" android:src="@drawable/image" /> <RelativeLayout android:layout_width="fill_parent" android:layout_height="200dp" android:background="@drawable/gradient_image" > <TextView android:id="@+id/text" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:layout_margin="6dp" android:layout_marginBottom="18dp" android:shadowColor="#000" android:shadowRadius="7.0" android:text="This is some random text" android:textColor="@color/white" android:textSize="22sp" /> </RelativeLayout> 

Я бы использовал FrameLayout или RelativeLayout. Первый вид, который вы добавляете в оба, должен быть фоновым ImageView, тогда, очевидно, вам понадобятся некоторые текстовые элементы и другие ImageViews [или кнопки или кнопки изображения и т. Д.].

Похоже на разумный макет: фоновое изображение, а затем еще один вид в каждом углу.

Для градиента вам, вероятно, понадобится отдельный Layout / View внизу с градиентом, который можно выделить в качестве фона, хотя я могу представить, что вы можете уйти с настройкой фона одного из ваших TextViews в качестве градиента.

Вам не нужно использовать файл с градиентом для рисования или установить его в xml .. вы можете сделать это прагматично, используя GradientDrawable Class, как описано в этом связанном Вопросе ( Создайте радиальный градиент программно ), затем установите его как фон для макета, который охватывает Ваш ImageView, это дает вам возможность использовать разные цвета и ориентации