2017-11-15 8 views
0

Ich habe ein ImageView innerhalb eines RelativeLayouts. RelativeLayout Die Höhe ist auf 50 dpi festgelegt und die ImageView-Höhe ist größer als 50 dpi. Ich möchte, dass mein ImageView das RelativeLayout durchquert.Warum ImageView das relative Layout nicht kreuzt

Ich befestige einen Bildschirm, den ich implementieren möchte.

enter image description here

<RelativeLayout 
android:id="@+id/btnMenu" 
android:layout_width="match_parent" 
android:layout_height="50dp" 
android:background="#000000" 
      android:clipChildren="false" 
      android:clipToPadding="false"> 

      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:background="@drawable/home_menu" 
       android:layout_alignParentLeft="true"/> 

      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_centerVertical="true" 
       android:background="@drawable/home_logo_bottom" 
       android:layout_alignParentRight="true"/> 

     </RelativeLayout> 
+0

was meinst du mit "die relative Layout Kreuz"? – Henry

+0

Ich habe benutzerdefinierte Design-Anforderung, ich habe ein Bild, das ich will. Danke –

+0

Got it. Kasse meine Antwort. Wenn Sie dieses "Durchstreichen" möchten, können Sie das ImageView nicht als Kind haben. Bring das außerhalb des RelativeLayouts. – Henry

Antwort

1

RelativeLayout sind Eltern und ImageView ist ein Kind in seinem Innern. Die Regel ist, wenn das Kind größer als das Elternteil ist, wird das Kind abgeschnitten, so dass nur das angezeigt wird, was zum Elternteil passt. Wenn also die Höhe des Elternteils 50 dpi beträgt und die Größe des Kindes 100 dpi ist, wird nur der 50-dp-Inhalt des untergeordneten Elements angezeigt.

Wenn Sie (in diesem Fall) den gesamten ImageView-Inhalt anzeigen möchten, ändern Sie die layout_height des RelativeLayout zu wrap_content. Wenn Sie das Layout wie im Bild ausführen möchten, sollten Sie ImageView nicht als untergeordnetes Element von RelativeLayout definieren.

0

Verwenden Sie zwei relativ Layouts

<RelativeLayout 
    android:id="@+id/parentlayout" 
    android:layout_width="match_parent" 
    android:layout_height="60dp" 
    android:background="#000000"> 

    <RelativeLayout 
    android:id="@+id/btnMenu" 
    android:layout_width="match_parent" 
    android:layout_height="50dp" 
    android:layout_alignParentBottom="true" 
    android:background="#000000"> 

     <ImageView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerVertical="true" 
      android:background="@drawable/home_menu" 
      android:layout_alignParentLeft="true"/> 


     </RelativeLayout> 

    <ImageView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_centerVertical="true" 
      android:background="@drawable/home_logo_bottom" 
      android:layout_alignParentRight="true"/> 

    </RelativeLayout> 
Verwandte Themen