前棒棒糖

时间:2016-06-13 16:07:44

标签: android shadow floating-action-button

我希望自定义宽度和高度FloatingActionButton更大。我发现只有在FrameLayoutCoordinatorLayout中将其添加为小孩时,才有可能实现这一点。在棒棒糖和棉花糖上它看起来不错。但是在前Lollipop上,来自FloatingActionButton的阴影非常奇怪。它是来自Android的错误还是我做错了什么?

<android.support.design.widget.CoordinatorLayout
    android:id="@+id/help_layout"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true">

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/my_btn"
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:layout_gravity="center"
        android:src="@mipmap/ic_launcher" />

</android.support.design.widget.CoordinatorLayout>

我还尝试添加app:borderWidth="0dp",但没有运气。

这就是Kitkat的样子:

Kitkat

3 个答案:

答案 0 :(得分:2)

Fab按钮在两个默认尺寸下可用。 正常(56dp), 迷你(40dp)

但您可以通过在dimens.xml中添加以下代码(在值下)来覆盖此值。

<dimen name="design_fab_size_normal">150dp</dimen>
<dimen name="design_fab_size_mini">30dp</dimen>

答案 1 :(得分:0)

我认为这是由这两行引起的:

android:layout_width="150dp"
android:layout_height="150dp"

尝试将它们设置为:

android:layout_width="match_parent"
android:layout_height="match_parent"

然后添加:

app:fabSize="normal"

所以最终的xml将是:

<android.support.design.widget.CoordinatorLayout
    android:id="@+id/help_layout"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true">

    <android.support.design.widget.FloatingActionButton
        android:id="@+id/my_btn"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:src="@mipmap/ic_launcher" 
        app:fabSize="normal"/>

</android.support.design.widget.CoordinatorLayout>

答案 2 :(得分:0)

你应该设置

android:layout_width= "wrap_content"
android:layout_height= "wrap_content"

和fabSize on mini(40dp)或normal(56dp)。 如果你想要不同尺寸的fab按钮,你应该按下按钮 例如。如果你想要48dp按钮大小,你应该添加

app:fabSize="mini"
android:scaleX=1.2
android:scaleY=1.2 

此外,如果您想保持图像大小设置     机器人:scaleType =&#34;中心&#34;