我有一个linearlayout,它有一个文本框(多行,近5行)和图像视图。是否可以在textview上绘制图像(重叠)?
注意:我必须指定图像的坐标,这些坐标不是静态的,可能位于文本上方的任何位置。
像这样的样机:
答案 0 :(得分: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,如果你使用对齐底部和东西..这将使它重叠。如果这有用,请告诉我
线性布局有什么特定原因吗?
答案 1 :(得分:0)
您可以使用RelativeLayout轻松完成此操作。您可以使ImageView重叠TextView除非使用LinearLayout有特定原因。
答案 2 :(得分:0)
如果你真的(真的)需要使用LinearLayout,你可以继承TextView并覆盖onDraw来绘制你的图像。
答案 3 :(得分:0)
在all your xml files
中,应为其定义背景颜色,它将解决问题:
将此android:background="@android:color/black"
添加到您定义的View标记中。