在我的应用程序中,我支持手机/平板电脑的外形和单独的布局我使用选择器“布局”(对于手机),“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扇区进行的即兴创作。
答案 0 :(得分:19)
正如它在Android文档here中以粗体显示(向下滚动到表2中的“smallestWidth”部分):
最小宽度是设备的固定屏幕尺寸特征; 当屏幕显示时,设备的smallestWidth不会改变 方向变化。
答案 1 :(得分:8)
无论设备方向如何,sw数字始终是两个屏幕尺寸中较短的一个。这就是名称“smallestWidth”中“最小”的来源。优于Gingerbread风格的“大型”& c。选择器只是你获得更多的控制粒度,并且它更可预测你实际得到的屏幕尺寸,因为它不依赖于制造商如何分类他们的屏幕尺寸。
如果要根据屏幕当前方向的宽度或高度选择布局,请使用名为layout-w600dp
或layout-h600dp
的目录。