我的FloatingActionButton在4.4及更低版本中有一些奇怪的线条

cas*_*orz 8 android android-appcompat floating-action-button android-design-library

正如标题所说,我FloatingActionButton有一些奇怪的线条仅在4.4或更低时出现.在棒棒糖上它工作正常.

这是问题的图片:

FAB

播放图像中没有这些线条.我的xml:

<android.support.design.widget.FloatingActionButton
            android:id="@+id/play"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:src="@drawable/ic_av_play_arrow"
            app:borderWidth="0dp"
            app:elevation="6dp"
            app:layout_anchor="@+id/image"
            app:layout_anchorGravity="center_vertical|right|end"
            app:rippleColor="@color/color_primary_light" />
Run Code Online (Sandbox Code Playgroud)

那么我做错了什么?

编辑:如果我将我的高程设置为0dp就会消失,所以我想我会为旧款手机做到这一点

kco*_*ock 9

你在这里的问题是你正在做出FloatingActionButton意想不到的规模.将FloatingActionButton在支持库仅支持两种规格,并且必须使用设定fabSize属性.

你应该改变:

<android.support.design.widget.FloatingActionButton
            android:id="@+id/play"
            android:layout_width="48dp"
            android:layout_height="48dp"
Run Code Online (Sandbox Code Playgroud)

成为:

<android.support.design.widget.FloatingActionButton
            android:id="@+id/play"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
Run Code Online (Sandbox Code Playgroud)

如果你想要一个较小的版本:

<android.support.design.widget.FloatingActionButton
            xmlns:app="http://schemas.android.com/apk/res-auto"
            android:id="@+id/play"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:fabSize="mini"
Run Code Online (Sandbox Code Playgroud)

资料来源:http://developer.android.com/reference/android/support/design/widget/FloatingActionButton.html

  • 当我使用wrap_content作为宽度和高度时,我遇到了同样的问题.阴影中的线条不像问题中的图像那么大,但它们仍然存在.这只发生在我的4.4.3设备上.我的棒棒糖和4.4之前的设备按预期工作. (2认同)