FAB - square on pre Lollipop and without shadow on

2019-01-14 07:17发布

问题:

It looks like FloatingActionButton is not working ether on Android 4.0 and Lollipop. As you can see on image below, on Android Lollipopo shadow is missing and on Android 4.1.1 it's square :/

Anyone faced this issue?

Library version: compile 'com.android.support:design:22.2.0'

Code:

<android.support.design.widget.FloatingActionButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/abc_ic_clear_mtrl_alpha"/> 

回答1:

Thanks to @harism comment, simply setting app:borderWidth="0dp" resolve both issues.

Note: don't forget to add xmlns:app="http://schemas.android.com/apk/res-auto" to your root layout.



回答2:

If the FAB still appears as square after setting borderWidth to 0dp, make sure that you aren't setting android:background in your XML or calling setBackgroundColor in code.

You should use android:backgroundTint (XML) or setSupportBackgroundTintList (code)



回答3:

@Raghunandan, I have same problem on Lollipop also.
Finally I find that the root cause is a drawable named "fab_background" in my drawable folder.
The drawable is previously used for my own fab implementation.
Now I can see round fab after I rename this drawable.



回答4:

Setting app:borderWidth="0dp" works. But if you are getting rendering issues in Android studio and have the Renderer set to Android M or 22, set it to 21



回答5:

Seems to be a bug. A developer said "Fixed internally. Will be out soon.".