【问题标题】:7" tablet is taking 10" layout7" 平板采用 10" 布局
【发布时间】:2013-03-05 05:33:21
【问题描述】:

我遇到了设备选择错误布局的问题。 我已经根据屏幕尺寸定义了我的布局,并将它们分组如下 - layout-sw600dp、layout-sw720dp 和 layout-sw480dp。

我有两个用于 sw600dp 的 7" 平板电脑。

1- 三星 7" Galaxy 选项卡 - 此设备采用 layout-sw600dp 中定义的正确布局。

2- 另一个 7" 设备 [从中国经销商处订购]- 此设备采用 10" 布局。

当我使用 http://www.whatismyscreenresolution.com/ 时,两个设备都给出 1024x600 。

检查我以编程方式检索到的最小屏幕宽度和屏幕宽度 [getResources().getConfiguration().smallestScreenWidthDp 和 screenWidthDp]。在第二台设备上,我得到的值为 720 和 1024。

关于如何进一步确保我的第二台设备也采用 layout-sw600dp 下定义的布局的任何想法。

问候 普雷迪普

【问题讨论】:

    标签: android-layout


    【解决方案1】:

    此代码在该设备上返回什么?

        DisplayMetrics dm = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(dm);
        String pxSize = dm.widthPixels + " x " + dm.heightPixels;
    

    它可能会显示 720x1024。 那是因为即使屏幕的物理尺寸为 600x1024px,您从这些方法中得到的也是制造商设置的值。这些设定值和实际值之间可能存在差异。

    如果是这种情况,您将无能为力。 除了可能是

     if ( "aTargetManufacturer".equals( android.os.Build.MANUFACTURER )  )
     {
         useAnotherLayout();
     }
    

    但这显然不是好的做法。

    【讨论】:

    • 显示指标是否返回 720x1024 ?
    猜你喜欢
    • 1970-01-01
    • 2014-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-14
    相关资源
    最近更新 更多