我已经在这几天苦苦挣扎,最后才决定问.这很简单,我必须遗漏一些非常基本的东西.
我有一个XML布局页面,其中定义了图像.我有两个动画XML页面,一个用于将alpha从0更改为1,另一个用于从1更改为0以创建"闪烁"效果.所以alphaAnimation是用XML定义的,我只需要调用它.
图像弹出,但没有循环闪烁效果.
public class blinker extends Activity {
//create name of animation
Animation myFadeInAnimation;
Animation myFadeOutAnimation;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.scanning_view);
//grab the imageview and load the animations
ImageView myImageView = (ImageView) findViewById(R.id.blinkingView01);
Animation myFadeInAnimation = AnimationUtils.loadAnimation(null, R.anim.fade_in);
Animation myFadeOutAnimation = AnimationUtils.loadAnimation(null, R.anim.fade_out);
//fade it in, and fade it out.
myImageView.startAnimation(myFadeInAnimation);
myImageView.startAnimation(myFadeOutAnimation);
}
}
Run Code Online (Sandbox Code Playgroud)
Anim资源中的两个XML动画布局:
<?xml version="1.0" encoding="UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<alpha android:fromAlpha="0.0"
android:toAlpha="1.0"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="50" android:repeatCount="infinite"/>
</set> …Run Code Online (Sandbox Code Playgroud) 在代码中,是否有任何方法可以使按钮持续闪烁,然后在按下时停止闪烁?
我想让我的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 …Run Code Online (Sandbox Code Playgroud) 在我的 Android 应用程序中,我有一个闪屏,它会闪烁应用程序的徽标 3 秒钟,然后启动登录活动。这是我的代码:
imgView.postDelayed(new Runnable() {
@Override
public void run() {
final Animation animation = new AlphaAnimation(1, 0);
animation.setDuration(1000);
animation.setInterpolator(new LinearInterpolator());
animation.setRepeatCount(Animation.INFINITE);
animation.setRepeatMode(Animation.REVERSE);
imgView.startAnimation(animation);
}
}, 3000);
Intent intent = new Intent(SplashscreenActivity.this,LoginActivity.class);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
但图像无限闪烁。如何让3秒后停止眨眼?我参考了一些帖子,但无法得到确切的答案。