嗨我发现有关平板电脑在更改方向纵向上的像素宽度和高度计算的问题,其中宽度= 800,高度= 1200,在横向模式下,它更改为宽度= 1165,高度= 790,为什么这个差异即将到来 我正在使用此代码
DisplayMetrics displaymetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
int height = displaymetrics.heightPixels;
int width = displaymetrics.widthPixels;`
答案 0 :(得分:1)
是的,因为您的设备硬件按钮也消耗了一些屏幕尺寸。
答案 1 :(得分:0)
我认为这是因为有些约束在景观中占据了一些空间而不是纵向。
答案 2 :(得分:0)
final View view = findViewById(R.id.yourView);
ViewTreeObserver observer = view.getViewTreeObserver();
observer.addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
Log.v(TAG,""+ view.getWidth()+" "+
view.getHeight());
view.getViewTreeObserver().removeOnGlobalLayoutListener(this);
}
});
答案 3 :(得分:0)
这可能意味着一些事情:
还有其他一些事情。 (例如应用程序的调整大小)
要获得绝对手机的屏幕尺寸,请使用以下代码:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
多数民众赞成。