我有一个Android程序与一堆文本视图。最初,所有这些观点都没有影子。Android如何删除文字阴影?
当我按下特定的切换按钮时,我想让这些textViews脱颖而出。
理想情况下,我想为它们添加文字阴影发光效果。这个我 成功没有问题做了与textView.setShadowLayer(半径,DX,DY,颜色)
的问题是,如果我再次按同一个切换按钮(这使得阴影出现), 我需要删除阴影,使文本不再突出显示。
我试图设置阴影层为半径0和透明颜色#00FFFFFF,#00000000和颜色#FFFFFFFF,#FF000000。然而,这些都没有设置textView返回 到它出现的原始方式。
关于如何去除阴影的任何想法。 (我并不需要删除它,我只是希望文本以与添加之前相同的方式显示)
主要目标是使用切换按钮打开/关闭特定文本视图的文本高亮显示和除了使用阴影之外,我愿意接受其他方法。理想情况下,我想使用阴影,但任何其他想法突出显示文字都很好。
我使用这种风格的TextView的布局XML
<style name="second">
<item name="android:textColor">@drawable/buttonBabyBlue</item>
<item name="android:textStyle">bold</item>
<item name="android:textSize">@dimen/second_text_size</item>
<item name="android:lines">1</item>
<item name="android:background">@drawable/baseGray</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:layout_width">0dip</item>
<item name="android:layout_weight">8.5</item>
<item name="android:gravity">bottom|left</item>
<item name="android:layout_gravity">bottom</item>
</style>
;
(这部分是我textLayer.setShadow(0,0,0,0),得到的回答后追加当我按下,这使得该按钮的视图有阴影
text.setShadowLayer(GLOW_RADIUS, GLOW_DX, GLOW_DY, R.drawable.buttonBabyBlue);
text.setTextColor(R.drawable.baseGray);
然后去除阴影
text.setShadowLayer(0, 0, 0, 0);
text.setTextColor(R.drawable.buttonBabyBlue);
就是讨厌我有图片展示,并上载他们,但他们 不让我告诉他们,怕垃圾邮件
这并不工作,影子被删除,但文本视图现在是一个较暗的颜色比原来的表现.. – phriendtj
感谢您的答案,但我想我将不得不找一些其他突出显示这些文本视图的方式。我有两个其他的想法,1.将背景改为别的,然后回来,2。使用FrameLayout,将相同事物的一些低alpha文本视图放在现有的视图上,然后以某种方式删除它们,第一种方法可能看起来不太好,第二种方法可能很难在各种屏幕尺寸上工作,并且会因为额外视图的数量的压力性能 – phriendtj
我必须澄清,我不知道为实际颜色资源vs可绘制资源设置文本颜色是非常不同的事实,我认为可绘制wsa只是一个颜色与alpha值,但情况并非如此... setShadowLayer(0,0,0,0)在正确使用颜色/绘图时确实有效 – phriendtj