几秒钟后如何更改按钮的背景资源

时间:2013-08-28 09:12:26

标签: android button background timer

我正在创建一个类似记忆游戏的应用程序。一个按钮有一个来自drawable的图像资源,我希望按钮的背景资源回到默认背景,比如5秒后。

这是我的代码。

 Collections.shuffle(ShapesArray);

   this.myImg1=ShapesArray.get(0);
   img1.setBackgroundResource(myImg1);

   task =  new TimerTask(){

    @Override
    public void run() {
        // TODO Auto-generated method stub

        img1.setBackgroundResource(android.R.drawable.btn_default);
    }

   };

   Timer appear = new Timer();
   appear.schedule(task, 5000);

   img1.setOnClickListener(new OnClickListener(){

        public void onClick(View v) {
            img1.setBackgroundResource(myImg1);
            String txt = PName.getText().toString();
             if(txt.equals("Heart")){
                    if(myImg1 == R.drawable.heart){
                        correct++;
                        img1.setBackgroundResource(android.R.drawable.btn_default);
                    } 
                }

然而,在5秒后,活动部队关闭并返回上一个活动。我是Android的新手。请帮忙。 :(

1 个答案:

答案 0 :(得分:1)

您可以使用延迟后处理程序或使用倒数计时器,这里我举一个倒数的例子,那就是 -

new CountDownTimer(30000, 1000) {

     public void onTick(long millisUntilFinished) {
       //This is when you click on each tick it came here after 1000 millisecond
     }

     public void onFinish() {
    // After the time is experied so here can change image

      Printer.setBackgroundResource(R.drawable.prntr);       

     }
  }.start();

由于