Мельчайший ширина макеты. Ошибка в Nexus 7?

При использовании квалификаторов layout-swdp я получаю результаты, как показано в приложении. Предполагается, что определитель sw означает, что наименьшее измерение должно соответствовать или быть больше, чем определитель. Это, похоже, не работает с Nexus 7 (работа 4.2.1). Я запутался в том, какие наименьшие определители ширины делают или неправильно сообщают N7?

Чтобы воспроизвести мой тестовый пример, у меня есть много папок layout-swdp. Каждый из них имеет 2 текстовых поля. Первый только указывает, в каких папках он находится. Следующий код:

private CharSequence collectScreenStats() { StringBuilder str = new StringBuilder(); DisplayMetrics metrics = getResources().getDisplayMetrics(); int width = metrics.widthPixels; int height = metrics.heightPixels; int dpWidth = (int)(width / metrics.density); int dpHeight = (int)(height / metrics.density); str.append(Build.MANUFACTURER); str.append(" "); str.append(Build.MODEL); str.append("\n"); str.append("Pixels: "); str.append(width); str.append(" x " ); str.append(height); str.append("\nDp (px / density): "); str.append(dpWidth); str.append("dp x " ); str.append(dpHeight); str.append("dp" ); str.append("\nsmallest w: " + Math.min(dpWidth, dpHeight)); str.append("\ndensity: "); str.append(metrics.density); str.append("\ndensityDpi: "); str.append(metrics.densityDpi); return str; } 

Введите описание изображения здесь

Хорошо, это похоже на ошибку в ICS, где она не точно сообщает количество пикселей всего экрана, поскольку оно учитывает хром.

Android DisplayMetrics возвращает неправильный размер экрана в пикселях на ICS

Итак, мои приведенные выше номера дисплея отключены, так как связь 7 составляет 1280 x 800, а не 1280 x 736. Используя правильные цифры, все работает.