不同平板电脑android的资源

时间:2012-07-20 13:47:38

标签: android resources resolution tablet hdpi

我需要在我的应用程序中为两个三星平板电脑提供不同的资源。 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

3 个答案:

答案 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