Перекрываются взгляды в андроиде? - PullRequest
3 голосов
/ 25 февраля 2011

У меня есть линейное расположение, которое имеет текстовое поле (многострочное, почти 5 строк) и вид изображения. Можно ли нарисовать изображение на textview (перекрытие)?

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

Примерно такой макет:

enter image description here

Ответы [ 4 ]

1 голос
/ 02 сентября 2012

Я думаю, что это может быть достигнуто с помощью RelativeLayout.

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >

        <TextView
                android:id="@+id/Textview"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="20dp"
                android:text="@string/Text2display"
                android:textColor="#EEDCAA" />


        <ImageView
            android:id="@+id/choose_img"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="-46dp"
            android:adjustViewBounds="true"
            android:contentDescription="@string/description_logo"
            android:src="@drawable/user2" />

    </RelativeLayout>

Помещая блок TextView над ImageView, он гарантирует, что представление изображения перекрывает TextView. Теперь, исходя из ваших требований и позиции, используйте следующие команды по ссылке: -

http://developer.android.com/reference/android/widget/RelativeLayout.LayoutParams.html

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

Есть ли какая-либо конкретная причина для линейного размещения?

0 голосов
/ 19 марта 2014

В all your xml files, должен определить цвет фона для него, это решит проблему:

Добавьте это android:background="@android:color/black" в тег View, который вы определили.

0 голосов
/ 02 сентября 2012

Если вам действительно (действительно) нужно использовать LinearLayout, вы можете создать подкласс TextView и переопределить onDraw для рисования изображения.

0 голосов
/ 25 августа 2012

Вы можете сделать это легко, используя RelativeLayout.Вы можете иметь ImageView, перекрывающий TextView, если только нет особой причины для использования LinearLayout.

...