2016-08-02 20 views
1

Guten Nachmittag, ich versuche, en ImageButton mit einem Schatten zu erstellen.ImageButton Höhenproblem

, das zu tun:

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_vertical" 
    android:padding="5sp"> 

    <ImageButton 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@drawable/circle_shape_little" 
     android:src="@drawable/ic_keyboard_arrow_right_black_24dp" 
     android:elevation="3sp"/> 
</LinearLayout> 

Aber hier ist das Ergebnis:

enter image description here

Wie Sie sehen können, die Grenzen "geschnitten" werden, und ich weiß nicht, warum.

Kann mir jemand helfen? Vielen Dank.

+0

versuchen, alle 'SP' in' dp' zu ändern – Enzokie

+0

Hat nicht funktioniert, danke trotzdem! –

+0

@ D.Math Versuchen Sie, diese Zeile hinzuzufügen 'android: outlineProvider =" Grenzen "'. –

Antwort

4

Fügen Sie eine layout_margin zu Ihrer ImageButton hinzu. Der elevation Schatten wird an den Rand der View (standardmäßig auf Null) abgeschoren

<ImageButton 
    android:layout_width="match_parent" android:layout_height="match_parent" 
    android:layout_margin="5dp" 
    android:background="@drawable/circle_shape_little" 
    android:src="@drawable/ic_keyboard_arrow_right_black_24dp" 
    android:elevation="3dp"/> 

Alternativ können Sie die padding der Ansicht verwenden könnten und stellen clipToPadding="false", aber dies zu unerwarteten Ergebnissen führen, je nach Ihrem Layout führen könnte .

Schließlich Sie should be mit dp für alles außer textSize, in diesem Fall würden Sie sp verwenden.

+1

Das war die Lösung. Vielen Dank! –