卡片视图为其内部的图像提供自动填充

时间:2015-12-22 08:52:27

标签: android android-xml android-cardview

我创建了一个卡片视图,如下所示:

<android.support.v7.widget.CardView
android:id="@+id/card"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
card_view:cardBackgroundColor="#FF5722"
android:layout_width="fill_parent"
android:layout_height="135dp"
card_view:cardCornerRadius="5dp"
android:layout_marginTop="9dp"
android:layout_marginLeft="9dp"
android:layout_marginRight="9dp"
card_view:cardElevation="0.01dp"
android:layout_marginBottom="0dp"
card_view:cardPreventCornerOverlap="false"
card_view:cardUseCompatPadding="true"
>
    <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"

    >


    <ImageView
        android:id="@+id/imgv"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="3"
        android:src="@drawable/android"
        />


    <RelativeLayout
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="7">


           <TextView
               android:id="@+id/textview1"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"/>


           <TextView
               android:id="@+id/textview2"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_marginLeft="40dp"
               android:layout_marginTop="30dp"

               />  

       </RelativeLayout>


   </LinearLayout>

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

上面的代码给出了图像的填充,如下所示。我在棒棒糖中运行这个,所以我不认为应该有任何问题。所以为什么会发生这种情况。 我也累了添加card_view:cardPreventCornerOverlap =&#34; false&#34;正如所说here。它仍然没有用。

Card View

更新

更改android后:layout_height =&#34; wrap_content&#34;而不是135 dp它完美地工作。但我想保持它135dp。我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

尝试设置card_view:cardUseCompatPadding =“false”,因为它会导致一些额外的填充。

答案 1 :(得分:0)

尝试删除cardView的marginTop。它增加了卡之间的额外间距。