美文网首页
像出现Dialog一样,Activity变暗

像出现Dialog一样,Activity变暗

作者: 楷桐 | 来源:发表于2017-12-20 23:58 被阅读40次

有什么便捷的方式实现activity变暗的效果

不要新开启Activity的方式
也不要使用Dialog
让背景跟Dialog出现一样,变暗,带动画。
private void dimBackground(final float from

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);

原文地址

相关文章

网友评论

      本文标题:像出现Dialog一样,Activity变暗

      本文链接:https://www.haomeiwen.com/subject/dqqowxtx.html