2015-06-23 32 views
1

我要淡出视图,我需要经过一些用户操作再次显示它。视图不可见后α(0)动画

所以我这样做:

view.animate().alpha(0).setDuration(duration).start(); 

动漫我到底:

view.setVisibility(View.GONE); 

,然后当我想再次显示它我做

view.setVisibility(View.VISIBLE); 

之后由于某种原因视图不可见。

目前我找到解决这个问题的唯一办法是通过动画结束这样做:

view.animate().alpha(1).start(); 
view.setVisibility(View.GONE); 

,这解决了它。
想知道是否有其他方式更优雅和更好的做法。 谢谢

回答

5

当您再次显示您的视图时,您需要将alpha重置为1:view.setAlpha(1f)

+0

This Works! 原来,只检查(不推荐使用)setAlpha(INT),并假设如果不工作,setAlpha(浮动)也将无法正常工作是错误的做法。 谢谢 –