我想将所有视图的alpha设置为AlphaAnimation(1.0F, 0.15F);
然后再次单击以重置Alpha
我使用以下代码:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(fadeinout) {
expControl.startAnimation(set1);
seekZoom.startAnimation(set1);
btnrotate.startAnimation(set1);
fadeinout=false;
} else {
expControl.startAnimation(set);
seekZoom.startAnimation(set);
btnrotate.startAnimation(set);
fadeinout=true;
}
}
});
和我的动画set1和set2在下面
private Animation FadeIn(int t)
{
AlphaAnimation localAlpha = new AlphaAnimation(1.0F, 0.15F);
localAlpha.setDuration(800L);
localAlpha.setStartOffset(100L);
localAlpha.setFillAfter(false);
localAlpha.setInterpolator(new AccelerateInterpolator());
return localAlpha;
}
private Animation FadeOut(int t)
{
Animation fade;
fade = new AlphaAnimation(0.15F, 1.0F);
fade.setDuration(800L);
localAlpha.setFillAfter(false);
fade.setInterpolator(new AccelerateInterpolator());
return fade;
}
但是当动画完成重置视图以填充Alpha时,我只希望通过单击按钮更改Alpha
并且它不适用于
setalpha()
。我想为SDK 8及以上版本的应用创建应用。谢谢。
最佳答案
// add this line
localAlpha.setFillEnabled(true);
// modify other line like this
localAlpha.setFillAfter(true);