我需要在我的应用程序中为两个三星平板电脑提供不同的资源。 600x1024(三星Galaxy Tab 7in) 800x1280(三星Galaxy Tab 8.9 in) 所以我创建了两个不同的文件夹 drawable-port (适用于7英寸)& res文件夹中的 drawable-large-port (8.9in),但这两个设备都从 drawable-large-port 文件夹中选择资源。
当我运行getResources()。getConfiguration()。两个设备输出的screenLayout出来了 SCREENLAYOUT_SIZE_LARGE
那么应该是什么文件夹名称,以便两个设备从不同的文件夹中选择资源。
由于 Narinder
答案 0 :(得分:0)
这两个设备都是 LARGE 屏幕,因此在这种情况下,当他们查看可绘制文件夹时,他们都会获取相同的资源。他们将始终使用 drawable-large-port 作为肖像, drawable-large-land 作为横向。
您可以通过为两个设备创建不同的布局来添加此功能,这两个设备以不同的方式使用 drawable-large-port 中的drawable,以利用不同大小的屏幕。 您可以为布局定义不同的尺寸:
res/layout-sw600dp/ // For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/ // For 10” tablets (720dp wide and bigger)
您可以在http://developer.android.com/guide/practices/screens_support.html
了解有关处理不同尺寸屏幕/设备的更多信息答案 1 :(得分:0)
您可以使用以下方法测量屏幕宽度:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
System.out.println("width :: "+width);
System.out.println("height :: "+height);
然后你可以设置Drawable,使用宽度为:
if(width == 600)
// set drawable-1
else if(width == 800)
// set drawable-2
答案 2 :(得分:0)
更好的结果将以下内容放在drawables中
---------------- for Phones ------------------------
抽拉-LDPI
抽拉-MDPI
抽拉-HDPI
-----------------适用于7英寸平板电脑----------------
抽拉-大MDPI
drawable-large-hdpi(适用于Nexus 7)
----------------适用于10英寸平板电脑----------------
抽拉-XLARGE-MDPI