2015-09-02 24 views
7

Desidero avere un CardView che contenga un ImageView che si sovrapponga al bordo sinistro del CardView. Voglio farlo dando a ImageView un margine negativo. Questo funziona perfettamente con tutti gli altri layout (LinearLayout/RelativeLayout/FrameLayout) impostando clipChildren = "false".CardView che ignora android: clipChildren = "false"

Tuttavia non riesco a farlo funzionare con un CardView. ImageView verrà ritagliato e non si sovrappone a CardView.

<android.support.v7.widget.CardView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="15dp" 
     android:clipChildren="false"> 
    <ImageView 
      android:layout_marginLeft="-10dp" 
      android:background="@drawable/some_picture" 
      android:layout_width="50dp" 
      android:layout_height="50dp"/> 
</android.support.v7.widget.CardView> 
+0

perché non si inserisce imageview fuori dal cardView, quindi si inseriscono entrambi in un Relati veLayout si sovrappongono l'un l'altro? –

+1

Sarebbe un'opzione. Tuttavia avere l'ImageView all'interno di CardView mi sembra la soluzione più pulita. – tymm

+0

Visitate il suo collegamento, spero che aiuta ... http://stackoverflow.com/questions/14845891/how-to-achieve-android-ui-like-this-image-layout-about-androidclipchildren –

risposta

1

avvolgerla in LinearLayout con param LinearLayout

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
android:clipChildren="false"> 

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

</LinearLayout>