如何在 TextView 周围设置阴影

How do I Set the Shadow around TextView

<TextView
            android:id="@+id/text"
            android:layout_width="225dp"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dp"
            android:layout_toRightOf="@+id/left"
            android:background="@anim/chatitemshaodow"
            android:fontFamily="calibri"
            android:padding="8dp"
            android:textColor="#636363"
            android:textSize="17dp" />

这是我的 TextView 控件,我想在 TextView 周围设置阴影。我可以在 TextView 的文本上设置 Showdown,但我无法在 TextView.

上设置阴影回合

我想像 android 中的给定屏幕一样设置文本视图阴影。

也许您会考虑使用 android:shadowColor、android:shadowDx、android:shadowDy、android:shadowRadius;或者 setShadowLayer() ?

有样式:

<style name="Text">
    <item name="android:paddingLeft">4px</item>
    <item name="android:paddingBottom">4px</item>
    <item name="android:textColor">#ffffffff</item>
    <item name="android:textSize">12sp</item>
    <item name="android:shadowColor">#000000</item>
    <item name="android:shadowDx">1</item>
    <item name="android:shadowDy">1</item>
    <item name="android:shadowRadius">1</item>
  </style>

方法一:

<TextView android:id="@+id/text"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       style="@style/Text"
       android:gravity="center" />

方法二:

TextView text= (TextView) findViewById(R.id.text);
infoTextView.setTextAppearance(getApplicationContext(),  
       R.style.Text);

创建一个新的可绘制资源文件。我将我的命名为 two_sided_border.xml.

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- This is the line -->
<item>
    <shape>
        <solid android:color="@color/black" />
    </shape>
</item>
<!-- This is the main color -->
<item android:bottom="2dp" android:right="2dp">
    <shape>
        <solid android:color="@color/green" />
    </shape>
</item>
</layer-list>

然后将其用作文本视图的背景。

<TextView
    android:id="@+id/t"
    android:background="@drawable/two_sided_border"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello_world"/>

您可以调整颜色和尺寸(填充、文字大小)以适应。

两个很棒的链接:

how to make stroke for 3 sides for a shape in android?

并从这里借用了一些代码:

Open-sided Android stroke?

ps Basil Miller 提供的另一个答案提供了为实际文本本身设置阴影的好方法。

这对我有用

android:shadowRadius="3" android:shadowDy="-4"