FAB - квадрат на pre Lollipop и без тени на Lollipop

Похоже FloatingActionButton не работает эфир на Android 4.0 и Lollipop. Как вы можете видеть на изображении ниже, на Android Lollipopo тень отсутствует, а на Android 4.1.1 она квадратная :/

Кто-нибудь сталкивался с этой проблемой?

Версия библиотеки: compile 'com.android.support:design:22.2.0'

Код:

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

введите здесь описание изображения


person Dmytro Danylyk    schedule 29.05.2015    source источник
comment
Есть одна зарегистрированная проблема с похожим поведением; code.google.com/p/android/issues/detail?id= 175067 .   -  person harism    schedule 29.05.2015


Ответы (4)


Благодаря комментарию @harism, простая установка app:borderWidth="0dp" решает обе проблемы.

Примечание: не забудьте добавить xmlns:app="http://schemas.android.com/apk/res-auto" в корневой макет.

person Dmytro Danylyk    schedule 29.05.2015
comment
я все еще вижу, что это квадрат на устройствах с леденцами. Я что-то упускаю. <android.support.design.widget.FloatingActionButton xmlns:app="http://schemas.android.com/apk/res-auto" app:borderWidth="0dp" android:scaleType="center" android:elevation="5dp" android:src="@drawable/ic_add" android:layout_marginBottom="16dp" android:layout_width="56dp" android:layout_height="56dp" android:id="@+id/fab_1" android:layout_gravity="center_horizontal|bottom"/> - person Raghunandan; 30.05.2015
comment
Примечание протестировал его на Nexus 5, на котором работает 5.1. - person Raghunandan; 30.05.2015
comment
Это было исправлено в v22.2.1. если у вас все еще есть проблемы, убедитесь, что вы не устанавливаете цвет фона напрямую, а только оттенок. - person Bryan Bryce; 22.04.2016

Если FAB по-прежнему отображается как квадрат после установки для borderWidth значения 0dp, убедитесь, что вы не устанавливаете android:background в своем XML или не вызываете setBackgroundColor в коде.

Вы должны использовать android:backgroundTint (XML) или setSupportBackgroundTintList (код)

person Lars    schedule 15.07.2015

Настройка app:borderWidth="0dp" работает. Но если у вас возникают проблемы с рендерингом в студии Android и для Renderer установлено значение Android M или 22, установите для него значение 21.

person luca992    schedule 09.07.2015

Кажется, это ошибка. Разработчик сказал: «Внутреннее исправлено. Скоро выйдет».

person Michael    schedule 30.05.2015