我一直遇到一个问题,即用户按下并按住电源按钮并显示电源选项窗口,但其中一部分隐藏在RelativeLayout
后面。目前我正在使用:
RelativeLayout
WindowManager windowManager = (WindowManager) getBaseContext().getSystemService(Context.WINDOW_SERVICE);
WindowManager.LayoutParams params = new WindowManager.LayoutParams(overlay_width, overlay_height, overlay_left, overlay_top,
WindowManager.LayoutParams.TYPE_TOAST,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN
| WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
| WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE,PixelFormat.RGBA_8888 );
params.gravity = Gravity.TOP | Gravity.CENTER;
我需要这个view
在前面的一切,但我不希望它出现在前面的系统窗口,如,通知下拉栏和电源关闭选项窗口。
建议吗?
用TYPE_PHONE或TYPE_SYSTEM_OVERLAY代替type_toast WindowManager.LayoutParams.TYPE_TOAST,
我使用这个代码,它的工作:-
wm = (WindowManager)
final WindowManager.LayoutParams parameters = new WindowManager.LayoutParams(
(int)desired_width, (int)desired_height, LayoutParams.TYPE_PHONE, // First one is width then is height
WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
|WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH,
PixelFormat.TRANSLUCENT);
检查是否再次更改了字体