【发布时间】:2017-04-12 09:45:04
【问题描述】:
我在 xml 中有一个按钮。按下按钮时,我希望快速更改该按钮上的背景和文本。
我通常会使用这样的代码来获得最终结果:
String rndm[] = {"A","B","C","D"};
{rnd = rndm[(int) (Math.random() * rndm.length)];}
{Button btn = (Button) findViewById(R.id.button1);
btn.setText(String.valueOf(rnd));
btn.setTextColor(Color.parseColor("#000000"));}
在调用之前,虽然我可能想要一两秒钟的“洗牌”效果。
我尝试过像这样使用 java.util.timer:
@Override
public void onClick(View v) {
new java.util.Timer().schedule(
new java.util.TimerTask() {
@Override
public void run() {
String rndm[] = {"A","B","C","D"};
{rnd = rndm[(int) (Math.random() * rndm.length)];}
{Button btn = (Button) findViewById(R.id.button1);
btn.setText(String.valueOf(rnd));
btn.setTextColor(Color.parseColor("#000000"));}
}}}, 100 );
然后制作一些具有不同背景的照片,一个接一个地开火。我只是似乎无法掌握它。
我可能需要一种全新的方法来做我想做的事,但我不确定完成我需要的最佳方法是什么。
【问题讨论】:
-
EventQueue是 awt 的一部分,它不是 Android SDK 的一部分...您已将runOnUiThread与空的 Runnable 实现一起使用... -
这就是为什么当我读到使用它时我如此困惑的原因:)
-
我已经对其进行了编辑以阻止巨魔。那么,你碰巧知道如何完成我所需要的吗?
标签: java android button random background