Per API 21+ è necessario impostare app:borderWidth="0dp"
e app:elevation="[number]dp"
. Impostazione elevazione si stanno dando la dimensione d'ombra che si desidera:

Ecco un esempio di codice per API 21+:
<android.support.design.widget.FloatingActionButton
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/locate_user_FAB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/location_off"
app:elevation="6dp"
app:borderWidth="0dp"
android:layout_above="@+id/take_taxi_FAB"
app:backgroundTint="@color/colorAccentGrey">
Una cosa importante da ricordare per le API di seguito per 21 (Android 4), è per i termini di compatibilità FAB metterà un margine attorno al tuo pulsante per disegnare l'ombra. Poi si dovrebbe fare qualcosa di simile (Attualmente sto usando questo codice e lavora):
<android.support.design.widget.FloatingActionButton
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/locate_user_FAB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/location_off"
app:elevation="6dp"
app:borderWidth="0dp"
android:layout_above="@+id/take_taxi_FAB"
android:layout_alignParentRight="true"
android:layout_marginRight="@dimen/map_FAB_marginRight"
android:layout_marginBottom="@dimen/locate_user_FAB_marginBottom"
app:backgroundTint="@color/colorAccentGrey">
preferisco mettere xmlns:app="http://schemas.android.com/apk/res-auto"
all'inizio del codice XML, ma io non ci mettere solo per ricordare;]
fonte
2015-06-10 09:44:24
Almeno per 21+, questo può essere applicato: https://stackoverflow.com/questions/27080338/android-5-0-androidelevation-works-for-view-but-not-button – CommonsWare
Qualcosa che ho considerato, ma la rimozione di StateListAnimator non ripristina l'ombra. Ciò potrebbe essere dovuto al fatto che il FAB è in realtà un ImageView esteso non un pulsante. Strano perché FAB ha in realtà uno StateListAnimator. –