有什麼便捷的方式實現activity變暗的效果
- 不要新開啓Activity的方式
- 也不要使用Dialog
- 讓背景跟Dialog出現一樣,變暗,帶動畫。
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();
}
親測可用
/** 窗口背景變暗*/
dimBackground(1.0f,0.5f);
/** 窗口背景變亮*/
dimBackground(0.5f,1.0f);