使用下面的layout_above / layout不会产生预期的结果。物品消失了

时间:2015-02-26 17:35:05

标签: android xml image relativelayout

我有以下代码:

grid_view_item.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical">

<RelativeLayout
    android:layout_width="wrap_content"
    android:gravity="center_horizontal"
    android:layout_height="wrap_content">

    <com.entu.artapp.utils.SquareImageView
        android:id="@+id/gridItem_squareImageView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="centerCrop"
        android:visibility="invisible"/>

    <com.entu.artapp.utils.SquareImageView
        android:id="@+id/gridItem_selectedColor"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="centerCrop"
        android:background="#e85349"
        android:alpha="0.45"
        android:visibility="invisible"/>

    <com.entu.artapp.utils.SquareImageView
        android:id="@+id/gridItem_constantGrey"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="centerCrop"
        android:background="#000000"
        android:alpha="0.45"
        android:visibility="visible"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#FFFFFF"
        android:textColor="#FFFFFF"
        android:id="@+id/gridItem_textView"
        android:layout_centerInParent="true"
        android:hint="AAAAAAAAA"/>

    <ImageView
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_centerHorizontal="true"
        android:src="@drawable/checkmark"
        android:id="@+id/gridItem_selectedCheckMark"
        />

    <ProgressBar
        android:id="@+id/gridItem_progressBar"
        style="?android:attr/progressBarStyleSmall"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_centerInParent="true"
        android:visibility="visible"/>

</RelativeLayout>

产生这种观点:

enter image description here

我希望我的项目看起来像这样:

enter image description here

所以,我在CheckMark的imageView代码中添加了这一行:

android:layout_above="@+id/"gridItem_progressBar"

checkMark imageview只是消失了。 layout_below也是如此,如下所示:

enter image description here

有人可以帮我解决这个问题吗?

干杯!

1 个答案:

答案 0 :(得分:0)

如果您使用填充而不是上方或下方,它可能会有所帮助,为什么您希望线性布局作为父级和相对视图作为子级,如果您将相对布局作为父级,则会更容易。希望这可以帮到你。