控件的高度

a. 得到statusBarHeight:

public static int getStatusBarHeight(Context context) {

int result = 0;

int resourceId = context.getResources().getIdentifier("status_bar_height", "dimen",

"android");

if (resourceId > 0) {

result = context.getResources().getDimensionPixelSize(resourceId);

}

return result;

}

b.得到TitleBar高度

int contentViewTop = getWindow().findViewById(Window.ID_ANDROID_CONTENT).getTop();

int titleBarHeight = contentViewTop - statusBarHeight;

c.得到屏幕可显示区域高度

public static int getDisplayHeight(Context context) {

Rect frame = new Rect();

((Activity)context).getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);

int statusBarHeight = getStatusBarHeight(context);

//得到屏幕的整个高度

int mFullDisplayHeight = ((Activity)context).getWindowManager().getDefaultDisplay()

.getHeight();

//得到可显示屏幕高度

int mDisplayHeight = mFullDisplayHeight - statusBarHeight - titleBarHeight;

// Log.d("TEST", "status bar height:" + statusBarHeight);

// Log.d("TEST", "mFullDisplayHeight====" + mFullDisplayHeight);

return mDisplayHeight;

}

verdion> 3.2

public static void getDisplaySize(Context context) {

Display display = ((Activity)context).getWindowManager().getDefaultDisplay();

Point size = new Point();

display.getSize(size);

int width = size.x;

int height = size.y;

Log.d("Display sise", "width:" + width + "---height:" + height);

}

private void getScreenSize() {

DisplayMetrics metric = new DisplayMetrics();

getWindowManager().getDefaultDisplay().getMetrics(metric);

int screenWidth = metric.widthPixels;

int screenHeight = metric.heightPixels;

Log.d("Screen", "width: =" + screenWidth + " Height: =" + screenHeight);

}

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