ImageButton 提升问题

ImageButton elevation issue

下午好,我正在尝试创建带阴影的 en ImageButton。

为此:

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical"
    android:padding="5sp">

    <ImageButton
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/circle_shape_little"
        android:src="@drawable/ic_keyboard_arrow_right_black_24dp"
        android:elevation="3sp"/>
</LinearLayout>

但这是结果:

如你所见,边框是"cut",我不知道为什么。

有谁能帮助我吗?谢谢。

layout_margin 添加到您的 ImageButtonelevation 阴影被裁剪到 View 的边缘(默认为零):

<ImageButton
    android:layout_width="match_parent" android:layout_height="match_parent"
    android:layout_margin="5dp"
    android:background="@drawable/circle_shape_little"
    android:src="@drawable/ic_keyboard_arrow_right_black_24dp"
    android:elevation="3dp"/>

或者,您可以设置视图的 padding 并设置 clipToPadding="false",但这可能会导致意外结果,具体取决于您的布局。

最后,您 should be 对除 textSize 之外的所有内容都使用 dp,在这种情况下,您将使用 sp.