Ich versuche, eine Ansicht in Android mit abgerundeten Kanten zu machen. Die Lösung, die ich bisher gefunden habe, besteht darin, eine Form mit abgerundeten Ecken zu definieren und sie als Hintergrund für diese Ansicht zu verwenden.
Folgendes habe ich getan: Definiere ein Drawable wie folgt:
<padding
android:top="2dp"
android:bottom="2dp"/>
<corners android:bottomRightRadius="20dp"
android:bottomLeftRadius="20dp"
android:topLeftRadius="20dp"
android:topRightRadius="20dp"/>
Jetzt habe ich dies wie folgt als Hintergrund für mein Layout verwendet:
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="10dp"
android:clipChildren="true"
android:background="@drawable/rounded_corner">
Das funktioniert einwandfrei, ich kann sehen, dass die Ansicht abgerundete Kanten hat.
Aber mein Layout enthält viele andere untergeordnete Ansichten, z. B. eine ImageView oder eine MapView
. Wenn ich ein ImageView
Bild innerhalb des obigen Layouts platziere, werden die Bildecken nicht abgeschnitten / beschnitten, sondern es erscheint voll.
Ich habe andere Problemumgehungen gesehen, damit es wie die hier erläuterte funktioniert .
Aber gibt es eine Methode, um abgerundete Ecken für eine Ansicht festzulegen, und alle untergeordneten Ansichten sind in dieser Hauptansicht enthalten, die abgerundete Ecken hat?