如何在Android中为按钮的文本添加阴影?

时间:2019-02-03 21:05:07

标签: java android button

我有一个带有png图像作为背景的按钮,我想在其文本中添加阴影。

我尝试将这段代码添加到activity_main.xml中的按钮代码中:

android:shadowDy="20"
android:shadowDx="20"
android:shadowColor="#000"
android:shadowRadius="10"

但无效。

activity_mani.xml

<Button
    android:id="@+id/btnMarket"
    style="@style/ButtonTheme"
    fontPath="bkoodak.ttf"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_marginLeft="50dp"
    android:layout_marginRight="50dp"
    android:text="@string/btnMarket"
    android:textSize="40sp" />

styles.xml

<style name="ButtonTheme" parent="@android:style/Widget.Button">
    <item name="android:layout_width">fill_parent</item>
    <item name="android:textColor">#fff</item>
    <item name="android:textSize">15sp</item>
    <item name="android:padding">10dp</item>
    <item name="android:textStyle">bold</item>
    <item name="android:background">@drawable/btnbackground</item>
    <item name="android:gravity">center</item>
    <item name="android:layout_margin">3dp</item>
</style>

是否可以在按钮的文本上添加阴影?

1 个答案:

答案 0 :(得分:1)

最简单的方法是

yourButton.setShadowLayer(24,4,4,Color.RED);

方法的结构类似于setShadowLayer(float radius, float dx, float dy, int color)

,dx和dy是阴影的x和y偏移量