2016-03-24 9 views
7

Ich habe ein FrameLayout innerhalb meiner Root-Ansicht (linear: vertikal), die ich benutze, um verschiedene Fragmente abhängig von Benutzereingaben zu halten. Das FrameLayout ist kleiner als der Hintergrund und scheint daher "schwebend" zu sein.FrameLayout mit abgerundeten Ecken

Wie umrunde ich die Ecken des FrameLayouts?

Die frags, die in das FrameLayout gehen, sind keine Bilder, daher kann ich sie nicht zuschneiden.

+0

Können Sie nicht einfach in eine handgefertigte Drawable als Hintergrund Ihres FrameLayout geworfen? – m02ph3u5

+0

Überprüfen Sie diese http://www.gadgetsaint.com/tips/rounded-corners-views-layouts-android/#.WPz2QVN97BI – ASP

Antwort

11

Erstellen Sie eine XML-Datei, z. your_rounded_shape.xml, in Ihrem ziehbar Ordner und fügen Sie den folgenden Code ein:

<?xml version="1.0" encoding="UTF-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android"> 
    <solid android:color="#CCCCCC"/>  

    <stroke android:width="2dp" 
     android:color="#999999"/> 

    <padding android:left="2dp" 
     android:top="2dp" 
     android:right="2dp" 
     android:bottom="2dp"/> 

    <corners android:bottomRightRadius="8dp" 
     android:bottomLeftRadius="8dp" 
     android:topLeftRadius="8dp" 
     android:topRightRadius="8dp"/> 
</shape> 

Dann in Ihrem FrameLayoutyour_rounded_shape.xml als Hintergrund verwenden. So etwas wie das:

<FrameLayout 
    android:width="match_parent" 
    android:height="wrap_content" 
    android:background="your_rounded_shape"/> 
+0

Dies ist perfekt! Danke, es ist genau das, wonach ich gesucht habe. –