0
我开发的Android应用和测试了两个设备:的Android - 手动选择布局类型
银河S2 320x533dp 银河S4 360x640dp
两者都是“正常长”显示器,但由于S2是短比S4,我不能使用完整的S4屏幕。 我宁愿给S2“正常不长”的布局。 我该怎么做?
我开发的Android应用和测试了两个设备:的Android - 手动选择布局类型
银河S2 320x533dp 银河S4 360x640dp
两者都是“正常长”显示器,但由于S2是短比S4,我不能使用完整的S4屏幕。 我宁愿给S2“正常不长”的布局。 我该怎么做?
显然,使用缩放布局是很好的,例如, RelativeLayout的。如果您使用的布局类型不符合您的期望,您也可以在onCreate()方法中选择布局。
//in onCreate()
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
if (/*condition whether dimensions match certain phone*/) {
setContentView(R.layout.first);
} else {
setContentView(R.layout.second);
}
但我完全会试图避免这样的事情。你将不得不手动涵盖许多不同的维度,这是很多的工作,显然是不好的做法。尝试使用缩放的东西!
您的方式不起作用,因为我的布局具有相同的名称,但位于不同的文件夹中。 “布局”和“布局长”。 我使用RelativeLayout,但它仍然太长,因为元素之间的间距是在dp中。 – Flo