我正在开发一款Android应用,这会导致我的设备宽度尺寸为1024。我试过创建一个布局文件夹layout-w1024和layout-mdpi-sw1024dp;但设备使用layout-mdpi文件夹。我使用15作为最小的Android版本。
还有其他方法可以分隔1024个设备吗?
答案 0 :(得分:0)
如果它适用于您的项目,您可以以编程方式执行此操作,类似这样会根据屏幕的尺寸调用不同的布局。这有一些限制,因为它只能从一个Activity调用(在你的情况下不应该是一个问题),如果你的应用程序的布局有问题,它可能不是很可扩展。
条件width == 1024
可能应该用大于或等于某些特定的东西替换,你需要暂时使用它才能使它工作。您还应该考虑屏幕的高度,而不仅仅是宽度。
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
或者如果您想要它以像素为单位:
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int width = metrics.widthPixels;
然后:
//Depending on the width, set one layout or anotherone
setContentView(width == 1024?R.layout.for1024:R.layout.normal);