3

我有一个线性布局,它有一个文本框(多行,近 5 行)和图像视图。是否可以在 textview(重叠)上绘制图像?

注意:我必须指定图像的坐标,它不是静态的,可能在文本上方的任何位置。

像这样的样机:

在此处输入图像描述

4

4 回答 4

1

我认为可以使用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,如果你使用对齐底部和东西..这将使它重叠。请让我知道这是否有帮助

线性布局有什么具体原因吗?

于 2012-09-02T00:27:34.543 回答
0

您可以使用 RelativeLayout 轻松完成此操作。您可以让 ImageView 与 TextView 重叠,除非有使用 LinearLayout 的特定原因。

于 2012-08-25T14:21:28.113 回答
0

all your xml files,应该为它定义背景颜色,它会解决问题:

将此添加android:background="@android:color/black"到您定义的 View 标记中。

于 2014-03-19T07:49:16.113 回答
0

如果你真的(真的)需要使用 LinearLayout,你可以继承 TextView 并覆盖onDraw来绘制你的图像。

于 2012-09-02T01:20:36.843 回答