使用Dialog状态栏变黑问题

Window window = getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
lp.width = WindowManager.LayoutParams.MATCH_PARENT;
lp.height = WindowManager.LayoutParams.MATCH_PARENT;
 
// 如果将高度设置为MATCH_PARENT,那么就会出现状态栏变黑的问题

解决办法:

动态的去计算手机高度

getWindow().setLayout((ViewGroup.LayoutParams.MATCH_PARENT), UIUtil.getScreenHeight()- UIUtil.getStatusBarHeight());


 /**
     * 获取屏幕高度
     *
     * @return 屏幕高度
     */
    public static int getScreenHeight() {
        WindowManager wm = (WindowManager) getContext().getSystemService(Context.WINDOW_SERVICE);
        return wm.getDefaultDisplay().getHeight();
    }


  /**
     * 获取状态栏高度
     *
     * @return 状态栏高度
     */
    public static int getStatusBarHeight() {
        int result = 0;
        int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
        if (resourceId > 0) {
            result = getResources().getDimensionPixelSize(resourceId);
        }
        return result;
    }

 

你可能感兴趣的:(android相关)