设置图像的透明度(alpha)时,我遇到了一个奇怪的问题,该图像也是用RotateAnimation类设置的。在最高16(JB)的所有API级别上,组合的淡入淡出和动画效果很好。在API 16+上,淡化动画图像会重置动画。
我支持API级别9及以上。
最高API级别16,我使用:
ivDial.setAlpha(iOverlayAlpha);
其中iOverlayAlpha是一个int。到目前为止都很好。对于API级别16+,不推荐使用setAlpha(int),因此我必须使用:
ivDial.setImageAlpha(iOverlayAlpha);
但这会重置动画。我可以强制动画再次运行,但每次调用setImageAlpha(iOverlayAlpha)时它都会重置。
我可以使用:
ivDial.setImageAlpha(fOverlayAlpha);
其中fOverlayAlpha是一个浮点数。这可以正常工作,并且不会重置动画,但是文档说“请注意,将alpha设置为半透明值(0 我的观点不是很大,但我可以同时看到它们中的一些,所以我不想用它来消除性能。 有人知道为什么用JB中的SetImageAlpha(int)重置动画吗? 感谢。