Android:创建单击时闪烁的TextView

时间:2010-04-02 19:26:37

标签: android textview

如何在单击时将TextView设置为闪存?闪烁我的意思是我想要改变TextView的背景颜色。我基本上想要一个在ListActivity中显示但在普通View中的对象。

我试图通过添加OnClickListener来实现这一点,但我真正需要的是添加一个On(Un)SelectListener。使用onClickListener,我可以更改TextView背景,但显然背景保持这种颜色。我曾想过使用一个新的Handler()。postDelayed(new Runnable(){...})在一段时间之后重置背景的东西,但是我不知道这对于我正在尝试的东西是否有点过头了要做。

你会推荐什么?

1 个答案:

答案 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。

但也许你的解决方案更简单......