如何实现Activity窗口快速变暗
<p>如何实现Activity窗口快速变暗</p>
<p>利用只读属性动画+WindowManager</p>
<pre><code class="language-java"> /*
*@param from\&gt;=0&amp;&amp;from\&lt;=1.0f
* @param to\&gt;=0&amp;&amp;to\&lt;=1.0f
*
* */
private void dimBackground(final float from, final float to) {
final Window window = getWindow();
ValueAnimator valueAnimator = ValueAnimator.ofFloat(from, to);
valueAnimator.setDuration(500);
valueAnimator.addUpdateListener(new AnimatorUpdateListener() {
@Override
public void onAnimationUpdate(ValueAnimator animation) {
WindowManager.LayoutParams params = window.getAttributes();
params.alpha = (Float) animation.getAnimatedValue();
window.setAttributes(params);
}
});
valueAnimator.start();
}</code></pre>