相对布局压缩子视图

时间:2014-11-27 13:33:10

标签: android android-layout android-relativelayout android-imagebutton

我在RelativeLayout中有一个ImageView和TextView,可以将它们作为一个组合在一起的组移动。它在Eclipse内部的Graphical Layout中看起来很好。

(蓝色显示RelativeLayout的轮廓):

enter image description here

然而,当我运行应用程序时,子视图会出现压扁或相互挤压。 ImageView甚至不再显示了。我不确定为什么会这样?

enter image description here

XML

<RelativeLayout
    android:id="@+id/frameB"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/squashcourt"
    android:layout_alignLeft="@+id/squashcourt"
    android:layout_marginBottom="8dp"
    android:layout_marginLeft="8dp"
    android:clickable="true"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/tv_aboveB"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_margin="3dp"
        android:clickable="true"
        android:text="Robin"
        android:textAllCaps="true"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/Red"
        android:textStyle="bold" />

    <ImageView
        android:id="@+id/btn_B"
        android:layout_width="115dp"
        android:layout_height="115dp"
        android:layout_below="@+id/tv_aboveB"
        android:layout_centerHorizontal="true"
        android:layout_margin="3dp"
        android:clickable="true"
        android:scaleType="fitXY"
        android:src="@drawable/b_left" />

</RelativeLayout>

我使用的是三星S4。谁能提出建议? 提前谢谢!

1 个答案:

答案 0 :(得分:0)

您只需使用底部可绘制的TextView

 <TextView
        android:id="@+id/tv_aboveB"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:clickable="true"
        android:text="Robin"
        android:drawableBottom="@drawable/ic_launcher"
        android:textAllCaps="true"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="#ff0000"
        android:textStyle="bold" />

现在您可以将TextView移动到屏幕上的任何位置。