Android获取状态栏高度,动态设置控件高度

1、获取状态栏高度

//获取status_bar_height资源的ID
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
if (resourceId > 0) {
    //根据资源ID获取响应的尺寸值
    int statusBarHeight = getResources().getDimensionPixelSize(resourceId);
    SPUtils.putInt(Constant.STATUSBAR_HEIGHT,statusBarHeight);
}

2、动态设置控件高度 

int statusBarHeight = SPUtils.getInt(Constant.STATUSBAR_HEIGHT, 0);
if (statusBarHeight > 0) {
    LinearLayout.LayoutParams sp_params = new LinearLayout.LayoutParams(
            RelativeLayout.LayoutParams.MATCH_PARENT,
            RelativeLayout.LayoutParams.WRAP_CONTENT);
    sp_params.height = statusBarHeight;
    mvView.setLayoutParams(sp_params);
}

3、务必保持一致 ( LinearLayout. LinearLayout.LayoutParams 与需要设置的控件父控件)

LinearLayout.LayoutParams


    
    

你可能感兴趣的:(控件)