Ich möchte eine schwebende Aktionsschaltfläche (um Elemente zu einer Listenansicht hinzuzufügen) wie Google Kalender erstellen, um die Kompatibilität mit Android-Versionen vor Lollipop (vor 5.0) zu gewährleisten.
Ich habe dieses Layout erstellt:
Aktivität main_activity.xml:
<LinearLayout ... >
<include
layout="@layout/toolbar"/>
<RelativeLayout ... >
<!-- My rest of the layout -->
<!-- Floating action button -->
<ImageButton style="@style/AppTheme"
android:layout_width="60dp"
android:layout_height="60dp"
android:text="New Button"
android:id="@+id/button"
android:src="@drawable/ic_fab"
android:background="@drawable/fab"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="24dp"
android:layout_marginRight="24dp"/>
</RelativeLayout>
</LinearLayout>
Drawable fab.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="#ffa48bc0"/>
</shape>
Style styles.xml
<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#ff1d79b1</item>
<item name="colorPrimaryDark">#ff084d95</item>
</style>
</resources>
Das Ergebnis ist ähnlich, aber es gibt keine Schattierung, ein Merkmal des Materialdesigns:
Die schwebende Aktionstaste des Kalenders:
Die schwebende Aktionstaste meiner App:
Wie kann ich die Schattierung zu meiner Schaltfläche hinzufügen?
Ich habe das Attribut Elevation bereits verwendet, funktioniert aber nicht