ImageView 存在,但在显示中不可见

ImageView present, but not visible in display

我正在尝试在两个 RelativeView's 的交集上显示 ImageView,但是 运行 遇到了一些问题。

我添加了 ImageView 并且显示了调整边框并允许我约束和调整元素的大小,但它不可见。如果我将 ImageView 放在其中一个 RelativeView's 中,那么图像就会显示出来,但我不能像我想要的那样重叠两个 RelativeView's 的交集。

在此屏幕截图中,您可以看到 ImageView 出现并重叠在屏幕中间,但没有显示任何图像。

这是我的全部.xml

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main_inference"
android:layout_width="match_parent"
android:layout_height="match_parent">


<ImageView
    android:id="@+id/spinner"
    android:layout_width="351dp"
    android:layout_height="62dp"
    android:layout_alignParentStart="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentBottom="true"
    app:layout_constraintBottom_toBottomOf="@+id/linearLayout"
    app:layout_constraintEnd_toEndOf="@+id/linearLayout"
    app:layout_constraintStart_toStartOf="@+id/linearLayout"
    app:layout_constraintTop_toTopOf="@+id/linearLayout"
    app:srcCompat="@drawable/spinner" />

<LinearLayout
    android:id="@+id/linearLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:baselineAligned="false"
    android:orientation="vertical">

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_weight="1"
        android:background="@color/colorCoral">

        <View
            android:id="@+id/p1circle1"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:layout_alignStart="@+id/p1Tracker"
            android:layout_alignLeft="@+id/p1Tracker"
            android:layout_alignTop="@+id/p1Tracker"
            android:layout_alignBottom="@+id/p1Tracker"
            android:layout_marginStart="9dp"
            android:layout_marginLeft="9dp"
            android:layout_marginTop="4dp"
            android:layout_marginBottom="4dp"
            android:background="@drawable/circle" />

        <View
            android:id="@+id/p1circle2"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:layout_alignTop="@+id/p1Tracker"
            android:layout_alignEnd="@+id/p1Tracker"
            android:layout_alignRight="@+id/p1Tracker"
            android:layout_alignBottom="@+id/p1Tracker"
            android:layout_alignParentStart="true"
            android:layout_alignParentLeft="true"
            android:layout_marginStart="199dp"
            android:layout_marginLeft="199dp"
            android:layout_marginTop="4dp"
            android:layout_marginEnd="11dp"
            android:layout_marginRight="11dp"
            android:layout_marginBottom="4dp"
            android:background="@drawable/circle" />

        <View
            android:id="@+id/p1Tracker"
            android:layout_width="wrap_content"
            android:layout_height="28dp"
            android:layout_alignParentStart="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_marginStart="154dp"
            android:layout_marginLeft="154dp"
            android:layout_marginTop="137dp"
            android:layout_marginEnd="154dp"
            android:layout_marginRight="154dp"
            android:background="@drawable/trackbox" />

        <ImageView
            android:id="@+id/imageView4"
            android:layout_width="wrap_content"
            android:layout_height="108dp"
            android:layout_alignParentStart="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentBottom="true"
            android:layout_marginStart="139dp"
            android:layout_marginLeft="139dp"
            android:layout_marginTop="30dp"
            android:layout_marginEnd="137dp"
            android:layout_marginRight="137dp"
            android:layout_marginBottom="144dp"
            tools:srcCompat="@tools:sample/avatars" />

        <TextView
            android:id="@+id/usernamep1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentStart="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_marginStart="156dp"
            android:layout_marginLeft="156dp"
            android:layout_marginTop="6dp"
            android:layout_marginEnd="156dp"
            android:layout_marginRight="156dp"
            android:fontFamily="sans-serif-condensed"
            android:text="Username"
            android:textColor="@color/White"
            android:textSize="18sp" />

    </RelativeLayout>

    <View
        android:id="@+id/myRectangleView"
        android:layout_width="match_parent"
        android:layout_height="3dp"
        android:background="@drawable/rectangle" />

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_weight="1"
        android:background="@color/colorBackground2">

        <TextView
            android:id="@+id/usernamep2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentStart="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_marginStart="156dp"
            android:layout_marginLeft="156dp"
            android:layout_marginTop="253dp"
            android:layout_marginEnd="156dp"
            android:layout_marginRight="156dp"
            android:fontFamily="sans-serif-condensed"
            android:text="Username"
            android:textColor="@color/White"
            android:textSize="18sp" />

        <View
            android:id="@+id/p1circle4"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:layout_alignTop="@+id/p1circle3"
            android:layout_alignEnd="@+id/p1Tracker2"
            android:layout_alignRight="@+id/p1Tracker2"
            android:layout_marginTop="0dp"
            android:layout_marginEnd="10dp"
            android:layout_marginRight="10dp"
            android:background="@drawable/circle" />

        <View
            android:id="@+id/p1circle3"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:layout_alignStart="@+id/p1Tracker2"
            android:layout_alignLeft="@+id/p1Tracker2"
            android:layout_alignTop="@+id/p1Tracker2"
            android:layout_alignBottom="@+id/p1Tracker2"
            android:layout_marginStart="10dp"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="4dp"
            android:layout_marginBottom="4dp"
            android:background="@drawable/circle" />

        <View
            android:id="@+id/p1Tracker2"
            android:layout_width="wrap_content"
            android:layout_height="28dp"
            android:layout_alignParentStart="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_marginStart="154dp"
            android:layout_marginLeft="154dp"
            android:layout_marginTop="110dp"
            android:layout_marginEnd="154dp"
            android:layout_marginRight="154dp"
            android:background="@drawable/trackbox" />

        <ImageView
            android:id="@+id/imageView6"
            android:layout_width="wrap_content"
            android:layout_height="108dp"
            android:layout_alignParentStart="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_alignParentEnd="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentBottom="true"
            android:layout_marginStart="138dp"
            android:layout_marginLeft="138dp"
            android:layout_marginTop="144dp"
            android:layout_marginEnd="138dp"
            android:layout_marginRight="138dp"
            android:layout_marginBottom="30dp"
            tools:srcCompat="@tools:sample/avatars" />
    </RelativeLayout>
</LinearLayout>

</android.support.constraint.ConstraintLayout>

有问题的图片标题为 spinner

要显示在顶部的图像视图需要相对于其中一个视图而不是父视图的边缘。这是你想要的地方,但在你的两个相对视图之后,即你需要居中到兄弟姐妹的边缘。同时设置高度 属性 以确保它在顶部。

<ImageView
    android:id="@+id/ImageView"
    android:layout_width="wrap_content"
    android:elevation="2dp"
    android:layout_height="wrap_content"
    app:layout_constraintTop_toBottomOf="@+id/siblingRelativeView1"
app:layout_constraintBottom_toBottomOf="@+id/siblingRelativeView2"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintEnd_toEndOf="parent"/>

此 gif 演示了文本视图到图像视图中心的概念,您想要的是将顶部居中到第一个相对视图,将底部居中到第二个相对视图。

尝试阅读 this