Android 有没有办法为SpannableString设置文本阴影?

Android 有没有办法为SpannableString设置文本阴影?,android,textview,shadow,spannablestring,Android,Textview,Shadow,Spannablestring,我有一个Android主屏幕小部件,上面有一个TextView。。不幸的是,我在设计它时遇到了一些问题 我想对文本应用动态(从代码更改)阴影,但我不知道如何做到这一点。我可以在布局中设置阴影,但如果我想在代码中更改阴影,则无法通过RemoteView完成此操作 我原以为我可以用SpannableString来做这件事,但我找不到任何有用的东西。。如果我在其中使用TextAppearanceSpan,它将忽略样式中的阴影属性。此外,当我开始在TextView上使用SpannableString时,

我有一个Android主屏幕小部件,上面有一个
TextView
。。不幸的是,我在设计它时遇到了一些问题

我想对文本应用动态(从代码更改)阴影,但我不知道如何做到这一点。我可以在布局中设置阴影,但如果我想在代码中更改阴影,则无法通过
RemoteView
完成此操作

我原以为我可以用
SpannableString
来做这件事,但我找不到任何有用的东西。。如果我在其中使用
TextAppearanceSpan
,它将忽略样式中的阴影属性。此外,当我开始在
TextView
上使用
SpannableString
时,它开始忽略我应用于
TextView
的阴影:(


这有什么问题,我最好的做法是什么?

尝试以下代码

TextView textHello = (TextView)findViewById(R.id.hello);
        textHello.setShadowLayer(
          5f,   //float radius
          10f,  //float dx
          10f,  //float dy 
          0xFFffffff //int color
          );

已编辑:这在小部件上不起作用,因为自定义视图不能在那里使用。但对于试图在其他地方的远程视图上设置它的人来说,这可能会有所帮助


实现这一点的一种方法是创建一个名为ShadowyTextView的自定义TextView,并为我要设置的每个值提供一个方法

然后就是写一些东西,比如:

setInt(R.id.myShadowyText,“setShadowColor”,someColor)

因此,属性是通过反射设置的


也许不是最优雅的解决方案,但找不到更好的解决方案。

不幸的是,正如我指出的,我在一个小部件中,通过
远程视图更改内容,所以我无法做到这一点。。。