我需要显示淡入和淡出的图像按钮(以及进出等等......)可以使用setAlpha设置透明度,但我如何淡入淡出?我的意思是我不能在另一个线程上做,因为你需要在UI线程上做这些事情,对吧?
我想它可以用动画完成,但我没有找到任何东西,因为我没有动画的经验,也不知道要搜索什么...
实际上我真正想要的是将一个图像淡入淡出另一个图像,但我想最简单的方法是将第一个图像按钮放在第二个图像按钮下方,然后淡化第二个图像按钮.或者有更简单的方法吗?
这是我现在使用的解决方案,适用于低于12的API级别:
AlphaAnimation anim = new AlphaAnimation(1.0f, 0.0f); anim.setDuration(1000); anim.setRepeatCount(NUM_REPEATS); anim.setRepeatMode(Animation.REVERSE); button.startAnimation(anim);
这是我们在项目中使用的动画.Spinner是一个视图,因此您可以使用imageview更改此视图.确实有两张图像在彼此之上,一张可见的图像是不可见的.这就是我们这样做的方式.希望能帮助到你.
spinner.setVisibility(View.VISIBLE); spinner.setAlpha(0); spinner.animate().setDuration(200).alpha(1).setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { spinner.setVisibility(View.VISIBLE); } }); infoActivityContent.animate().setDuration(200).alpha(0).setListener(new AnimatorListenerAdapter() { @Override public void onAnimationEnd(Animator animation) { infoActivityContent.setVisibility(View.GONE); mainPresenter.logout(); } });
你必须阅读淡入淡出两种观点的Android developers
。在本教程中,说明了如何执行所需的操作。