parent是父级是wrap_content吗?

时间:2015-02-03 16:09:06

标签: android xml material-design

我对Android开发很陌生。我尝试添加彩色矩形来填充CardView的高度。这是我的XML。

<android.support.v7.widget.CardView
        xmlns:card_view="http://schemas.android.com/apk/res-auto"
        android:id="@+id/card_view"
        android:layout_gravity="center_horizontal"
        android:layout_width="match_parent"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_height="wrap_content" >

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal" >

            <View android:id="@+id/color_bar"
                android:layout_width="50dp"
                android:layout_height="match_parent"
                android:background="#673AB7" />

             ...

        </RelativeLayout>
    </android.support.v7.widget.CardView>

但是,卡片中没有显示条形图。它似乎没有获得match_parent卡的高度(如果我在dp的高度硬编码,它会显示)。这是因为卡片的高度设置为wrap_content还是完全不同?我在API 16上。

编辑:这是我想要实现的目标:

An image showing what I'm trying to achieve

然而,这是通过硬编码的dp值完成的,并且不会扩展到设备。我试图让这个酒吧适应卡的大小。

1 个答案:

答案 0 :(得分:0)

可能会嵌套在LinearLayout并使用weight

<android.support.v7.widget.CarView
    ...>

    <LinearLayout
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:orientation="horizontal">
         <View
             android:layout_width="0dp"
             android:layout_height="match_parent"
             android:layout_weight="10"
             android:background="#67BA37"/>
         <RelativeLayout
             android:layout_width="0dp"
             android:layout_height="match_parent"
             android:layout_weight="100"
             ...>
             ...
          </RelativeLayout>
    </LinearLayout>
</android.support.v7.widget.CardView>

不是很平但似乎有效