-1

是否可以在单击按钮时使用可绘制的图像序列在特定时间内连续更改按钮的图片,我对帧动画知之甚少,是否可以应用帧动画来更改图片的图片按钮 ?如果没有,还有其他方法吗?

4

2 回答 2

1

请考虑帧动画:

AnimationDrawable animation = new AnimationDrawable();
animation.addFrame(getResources().getDrawable(R.drawable.image1), 1000);
animation.addFrame(getResources().getDrawable(R.drawable.image2), 1000);
animation.addFrame(getResources().getDrawable(R.drawable.image3), 1000);
animation.setOneShot(false);

Button btnAnimation =  (Button) findViewById(R.id.myBtn);
btnAnimation.setBackgroundDrawable(animation);


//In OnCreate or button_click event you can fire animation

animation.start()

我从这个偷了答案。

如果要更改每次单击的背景,可以调用以下命令:

    private int pics[]=  {R.drawable.p1, R.drawable.p2, R.drawable.p3, R.drawable.p4, R.drawable.p5};
private Random rand = new Random();

public int set_rand_pic() {
    int pos = rand.nextInt(pics.length-1);
    mycard.setBackgroundResource(pics[pos]);
    return pos; 
}

希望能帮助到你。

于 2013-11-06T11:11:58.747 回答
1

您可以使用倒数计时器。

new CountDownTimer(10000, 1000) {

     public void onTick(long millisUntilFinished) {

//Change the button Bachground here!
     }

     public void onFinish() {
         mTextField.setText("done!");
//set the button background that you want to show on end
     }
  }.start();   

thats all :) enjoy
于 2013-11-06T10:35:20.513 回答