我正在尝试将第三方FloatingActionButton替换为库com.android.support:design:22.2.0
中打包的the native one。默认外观在图像周围有一个暗影,我怎么能摆脱它?我知道前一个提供方法setShadow()
,但我找不到后者的类似方法。
这是相关的XML布局:
<android.support.design.widget.FloatingActionButton
android:id="@+id/alarm_front"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/btn_icon_alarm_notset" />
我已将背景颜色设置为黄色。
mAlarmBtn.setBackgroundTintList(ColorStateList.valueOf(getResources().getColor(R.color.floatButtonColor)));
答案 0 :(得分:29)
答案 1 :(得分:15)
通过添加以下内容覆盖FAB的默认高程:
app:elevation="0dp"
答案 2 :(得分:10)
添加此
android:elevation="0dp"
app:elevation="0dp"
它会像:
<android.support.design.widget.FloatingActionButton
android:id="@+id/floatingActionButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_add"
android:elevation="0dp"
app:elevation="0dp"
app:fabSize="normal"
android:scaleType="fitCenter"/>
答案 3 :(得分:4)
如果您使用的是支持库 - 最新的Android Studio模板可以使用它们。 检查导入
$allNotifications = $user->subnotifications()->whereHas('notifications',function($query){
$query->where('type', 'UserWasFollowed');
})->with('notification')->get();
否则,如果您只支持更新的sdk版本
import android.support.design.widget.FloatingActionButton;
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
//if using support app compat
fab.setCompatElevation(16.0f);
见
fab.setElevation();
//call requires SDK 21
答案 4 :(得分:1)
尝试了上面的所有建议,并没有为API 23和高效工作。我已经结束了这个,它完全消除了阴影:
app:backgroundTint="@android:color/transparent"
app:borderWidth="0dp"
以下是我的按钮现在的样子:
在改变之前,它看起来如下:
答案 5 :(得分:0)
将borderWidth设置为0
app:borderWidth="0dp"
答案 6 :(得分:0)
此解决方案也适用于 ExtendedFloatingActionButton:
style="@style/Widget.MaterialComponents.Button.UnelevatedButton"