2010-04-02 88 views
4

如何設置TextView在點擊時閃爍?閃爍我的意思是我想改變TextView的背景顏色。我基本上想要在ListActivity中顯示的對象之一,但在普通視圖內。Android:創建點擊時閃爍的TextView

我試圖通過添加一個OnClickListener來做到這一點,但我真正需要的是像添加一個On(Un)SelectListener。使用onClickListener,我可以更改TextView背景,但顯然背景保持該顏色。我想過使用一個新的Handler()。postDelayed(new Runnable(){...})類似的東西在一段時間後重置背景,但我不知道這是否會矯枉過正,去做。

你會推薦什麼?

回答

1

通常這種事情是通過具有<selector> drawable來實現的。例如:

<?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> 

的選擇仲裁基於它是在視圖狀態等繪圖資源之間你會把上面的XML在RE的文件/繪製/然後使用它作爲背景爲您的看法。您還需要擁有常規和按下的繪圖。

您也可以在代碼中創建選擇器可繪製的地方StateListDrawable

但也許你的解決方案更簡單...