Android 便捷的方式實現Activity變暗的效果
阿新 • • 發佈:2019-02-09
不要新開啟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);