如何在单击时将TextView设置为闪存?闪烁我的意思是我想要改变TextView的背景颜色。我基本上想要一个在ListActivity中显示但在普通View中的对象。
我试图通过添加OnClickListener来实现这一点,但我真正需要的是添加一个On(Un)SelectListener。使用onClickListener,我可以更改TextView背景,但显然背景保持这种颜色。我曾想过使用一个新的Handler()。postDelayed(new Runnable(){...})在一段时间之后重置背景的东西,但是我不知道这对于我正在尝试的东西是否有点过头了要做。
你会推荐什么?
答案 0 :(得分:1)
通常这种事情是通过<selector>
绘制来实现的。例如:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/pressed" />
<item android:drawable="@drawable/normal" />
</selector>
选择器根据其所处的视图状态在其他drawable之间进行仲裁。您可以将上面的xml放在res / drawable /中的文件中,然后将其用作视图的背景。你还需要正常和按下的drawables。
您还可以在名为StateListDrawable
的代码中创建selector-drawable。
但也许你的解决方案更简单......