android – 与“最小宽度600 dp”选择器混淆

在我的应用程序中,我支持手机/平板电脑的外形和单独的布局我使用选择器“布局”(对于手机),“layout-sw600dp”(对于平板电脑).

以下是详细信息:

http://android-developers.blogspot.in/2011/07/new-tools-for-managing-screen-sizes.html

Typical numbers for screen width dp are:
320: a phone screen (240x320 ldpi,320x480 mdpi,480x800 hdpi,etc).
480: a tweener tablet like the Streak (480x800 mdpi).
600: a 7” tablet (600x1024).
720: a 10” tablet (720x1280,800x1280,etc).

我有一台Nexus 4手机,以下是它的主要内容

Size:       4.7 inches
Resolution: 768 x 1280 pixels
DPI:        318
dp:         386 
Here is the dp calculation
dp = (px * 160)/dpi
dp = (768 * 160)/318

当我在dp计算公式中使用768 px时,dp值为386,但是当我通过1280 px时,dp值为644.

根据以下理解,我认为Nexus 4版本将从sw600dp读取布局,但事实并非如此.

由于分辨率为宽度X高度,因此在旋转设备时将反转.

我认为这是使用sw选择器与3.2之前的大型xlarge扇区进行的即兴创作.

解决方法

正如它在Android文档 here中以粗体显示(向下滚动到表2中的“smallestWidth”部分):

The smallestWidth is a fixed screen size characteristic of the device;
the device’s smallestWidth does not change when the screen’s orientation changes.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...