【发布时间】:2019-11-06 08:43:04
【问题描述】:
我在RecyclerView 中显示一些项目。在每个项目的布局中,我希望出现一个竖线。我在项目布局中创建了一个ImageView。在设计预览选项卡中可以看到,但在设备中看不到。
我见过this 的问题,与我的类似,但其中任何一个都有效。
这是布局(测试设备是三星):
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:id="@+id/mainrl">
<ImageView
android:layout_width="3dp"
android:layout_height="match_parent"
android:background="@color/backcolor"
android:layout_marginStart="50dp"
android:id="@+id/verticalbar"/>
<android.support.v7.widget.CardView
android:layout_width="60dp"
android:layout_height="60dp"
android:id="@+id/daycv"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginStart="20dp"
android:layout_marginTop="10dp"
card_view:cardCornerRadius="30dp"
card_view:cardPreventCornerOverlap="false"
card_view:cardBackgroundColor="@color/backcolor">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/day"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:textColor="@color/white"
android:textSize="17sp"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_below="@+id/day"
android:background="@color/white"
android:id="@+id/separador"
android:layout_marginStart="3dp"
android:layout_marginEnd="3dp"
android:layout_centerVertical="true"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/month"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:layout_below="@+id/separador"
android:textColor="@color/white"/>
</RelativeLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
android:layout_toEndOf="@+id/daycv"
android:layout_alignTop="@+id/daycv"
android:layout_marginEnd="10dp"
android:layout_marginStart="10dp"
android:id="@+id/contentcv">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rl">
<ImageView
android:layout_width="match_parent"
android:layout_height="200dp"
android:id="@+id/image"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:alpha="150"
android:background="@color/gris">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/origen"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginStart="10dp"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/flecha"
android:layout_toEndOf="@+id/origen"
android:layout_centerVertical="true"
android:layout_marginStart="10dp"
android:background="@android:drawable/ic_media_ff"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/destino"
android:layout_toEndOf="@+id/flecha"
android:layout_marginStart="10dp"
android:layout_centerVertical="true"/>
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_alignParentBottom="true"
android:alpha="150"
android:background="@color/gris">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:id="@+id/voidimage"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fechasalida"
android:layout_above="@+id/voidimage"
android:layout_alignParentStart="true"
android:layout_marginStart="10dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fechallegada"
android:layout_alignStart="@+id/fechasalida"
android:layout_below="@+id/voidimage"
android:layout_marginBottom="10dp"/>
</RelativeLayout>
</RelativeLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
为什么我的 ImageView 在设备中看不到?
谢谢。
编辑:
图片:
编辑 2:
我已将布局更改为:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:id="@+id/mainrl">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/cvrl">
<!--<android.support.v7.widget.CardView
android:layout_width="60dp"
android:layout_height="60dp"
android:id="@+id/daycv"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_marginStart="20dp"
android:layout_marginTop="10dp"
card_view:cardCornerRadius="30dp"
card_view:cardPreventCornerOverlap="false"
card_view:cardBackgroundColor="@color/backcolor">-->
<android.support.v7.widget.CardView
android:layout_width="60dp"
android:layout_height="60dp"
android:id="@+id/daycv"
android:layout_centerHorizontal="true"
android:layout_marginStart="20dp"
android:layout_marginTop="10dp"
card_view:cardCornerRadius="30dp"
card_view:cardPreventCornerOverlap="false"
card_view:cardBackgroundColor="@color/backcolor">
<RelativeLayout
android:layout_width="wrap_content"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/day"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:textColor="@color/white"
android:textSize="17sp"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_below="@+id/day"
android:background="@color/white"
android:id="@+id/separador"
android:layout_marginStart="3dp"
android:layout_marginEnd="3dp"
android:layout_centerVertical="true"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/month"
android:layout_centerHorizontal="true"
android:layout_marginTop="5dp"
android:layout_below="@+id/separador"
android:textColor="@color/white"/>
</RelativeLayout>
</android.support.v7.widget.CardView>
<ImageView
android:layout_width="3dp"
android:layout_height="wrap_content" <---- Changing this affects how the vertical line sees.
android:src="@color/backcolor"
android:layout_marginStart="40dp"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:id="@+id/verticalbar"/>
</RelativeLayout>
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
android:layout_toEndOf="@+id/cvrl"
android:layout_alignTop="@+id/cvrl"
android:layout_marginEnd="10dp"
android:layout_marginStart="10dp"
android:id="@+id/contentcv">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rl">
<ImageView
android:layout_width="match_parent"
android:layout_height="200dp"
android:id="@+id/image"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:alpha="150"
android:background="@color/gris">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/origen"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginStart="10dp"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/flecha"
android:layout_toEndOf="@+id/origen"
android:layout_centerVertical="true"
android:layout_marginStart="10dp"
android:background="@android:drawable/ic_media_ff"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/destino"
android:layout_toEndOf="@+id/flecha"
android:layout_marginStart="10dp"
android:layout_centerVertical="true"/>
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_alignParentBottom="true"
android:alpha="150"
android:background="@color/gris">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:id="@+id/voidimage"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fechasalida"
android:layout_above="@+id/voidimage"
android:layout_alignParentStart="true"
android:layout_marginStart="10dp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fechallegada"
android:layout_alignStart="@+id/fechasalida"
android:layout_below="@+id/voidimage"
android:layout_marginBottom="10dp"/>
</RelativeLayout>
</RelativeLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>
如果我输入 height: match_parent,则只能看到一行的一小部分。但是,如果我设置为随机数(例如 300dp),则会显示该行...
【问题讨论】:
-
你能添加你接受的或当前的视图图片
-
当您将
ImageView作为第一级RelativeLayout中的最后一个子级时会发生什么? -
它都没有显示
标签: android android-layout android-imageview