gpt4 book ai didi

Android - 制作 ImageView "blink"

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:49:14 24 4
gpt4 key购买 nike

我想让我的 ImageView 看起来像在闪烁。更准确地说,在单击按钮之类的事件中,我希望 ImageView 更改其 src 1 秒钟,然后改回原样,然后再次更改等等。然后它应该停止,并且 ImageView 应该具有与之前相同的 src。我试图根据另一个问题做一些事情,但它不起作用......

private class MyHandler extends Handler {
public ImageView imgView;

@Override
public void handleMessage(Message msg) {
if (imgView != null) {
switch (msg.what) {
case 0:
imgView.setImageResource(R.drawable.red_img);
break;
case 1:
imgView.setImageResource(R.drawable.white_img);
break;

}
}
super.handleMessage(msg);
}
}

(...)

MyHandler blinker = new MyHandler();
blinker.imgView = imgView;
for (int j = 0; j < 5; j++) {
Message msg = new Message();
if (j % 2 == 0) {
msg.what = 0;
} else {
msg.what = 1;
}

blinker.sendMessageDelayed(msg, j * 300);
}

有谁知道如何做到这一点(如果可以的话)。谢谢!

最佳答案

或者您可以简单地使用 AnimationDrawable通过在 xml 中定义它:

<animation-list android:id="@+id/selected" android:oneshot="false">
<item android:drawable="@drawable/state1" android:duration="1000" />
<item android:drawable="@drawable/state2" android:duration="1000" />
</animation-list>

并在其上调用 start():

ImageView img = (ImageView)findViewById(R.id.spinning_wheel_image);
img.setImageResource(R.drawable.my_blinking_drawable);
AnimationDrawable frameAnimation = (AnimationDrawable) img.getDrawable();
frameAnimation.start();

关于Android - 制作 ImageView "blink",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18234316/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com