在oncreat方法中 初始化的到窗体服务 mWindowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);@Overrideprotected void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();if (nightMode) {offNightMode();记得销毁System.out.println("removeViewImmediate");}}public
void offNightMode(){mWindowManager.removeViewImmediate(layout);}public void night() {WindowManager.LayoutParams lp = new WindowManager.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT,WindowManager.LayoutParams.TYPE_APPLICATION,WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE|
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,PixelFormat.TRANSLUCENT);lp.gravity = Gravity.BOTTOM;// 可以自定义显示的位置// lp.y = 10;// 距离底部的距离是10像素 如果是 top 就是距离top是10像素layout = new LinearLayout(this);layout.setBackgroundColor(0x99000000);mWindowManager.addView(layout,
lp);}
Android夜间模式显示实现方式
最新推荐文章于 2024-12-02 09:48:44 发布
本文介绍了一个简单的夜模式实现方案,通过在Activity的onCreate方法中初始化WindowManager,并使用LayoutParams设置布局参数来添加一个覆盖全屏的半透明黑色LinearLayout,从而达到开启夜模式的效果。同时提供了关闭夜模式的方法。
1109

被折叠的 条评论
为什么被折叠?



