作者pokk (璐琺)
看板AndroidDev
標題[問題] 按一下Button變色的問題
時間Mon Mar 14 15:20:42 2011
問題:
我想請問各位大大,我在Layout的地方宣告一個Button,
但我在.java檔裡面把Button宣告成TextView型別,
使得Button變得像TextView一樣可以Click,
但問題來了,我想要把那個TextView作得點一下會變色,過0.x秒就變回原色,
例如 : 原本TextView是藍色,點下去的時候變深藍色,過0.x秒再變回藍色,
public void onClick(View v) // 點擊 Do Re Mi Fa 的 Button 所回應的程式碼
{
switch (v.getId())
{
case R.id.upleft:
UpLeftButton.setBackgroundColor(0x99f0f000);
break;
case R.id.upright:
UpRightButton.setBackgroundColor(0x9900f000);
break;
case R.id.downleft:
DownLeftButton.setBackgroundColor(0x990000f0);
break;
case R.id.downright:
DownRightButton.setBackgroundColor(0x99f00000);
break;
}
try
{
Thread.sleep(1000);
}
catch (Excption e)
{
Log.i("Error", e.toString());
}
SetBackground(); // 設定回原來的顏色
}
我有試著這樣寫過,但會wait 1秒,可是顏色卻不會變深再變回來,
想請教大大們該怎麼做才可以達到我想要的那種效果呢?
程式碼: (請多利用置底文網站)
http://pastebin.com/J1uUryM0
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.52.201
1F:→ afz096:試著把 變顏色的部份 寫成 handler 或是用 AsyncTask 解決 03/14 16:29
2F:→ pokk:我使用thread+handler已經達到了,但又出現一個問題,就是在 03/14 20:52
3F:→ pokk:跑for的時候,一次的迴圈使其中一個background 亮->暗->亮, 03/14 20:53
4F:→ pokk:第二個迴圈使另一個background 亮->暗->亮 這用thread達不到 03/14 20:53