這是我檢查的屏幕尺寸和改變FrameLayout
大小的代碼。檢查屏幕大小不工作
FrameLayout topLayout = (FrameLayout) findViewById(R.id.topLayout);
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
double x = Math.pow(dm.widthPixels/dm.xdpi,2);
double y = Math.pow(dm.heightPixels/dm.ydpi, 2);
double screenInches = Math.sqrt(x + y);
if (screenInches < 5) topLayout.setLayoutParams(new LinearLayout
.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,170));
if (screenInches >= 5 && screenInches < 7) topLayout
.setLayoutParams(new LinearLayout
.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 200));
else topLayout.setLayoutParams(new LinearLayout
.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 230));
我不知道爲什麼它不工作。
是什麼,如果任何的錯誤? –
沒有錯誤。只是FrameLayout的高度減少了... – DevOma