我在ADT中使用eclipse。
对于我只使用纵向视图的活动,因此希望使用h<N>dp
xml限定符来指定布局的最小可用高度。
当我命名我的文件夹layout-h641dp
并从下拉列表中选择Galaxy Nexus(640 x 360 dp
)设备时,Eclipse会按预期自动选择较低的layout-h450dp
。
当我将文件夹重命名为layout-h640dp
时,我可以使用Galaxy Nexus查看布局,但它不应该,因为可用高度仅为519dp
加上48dp
(针对操作栏)= 567dp
(参见图片)和谷歌状态Supporting multiple screens
注意:使用这些限定符指定的尺寸为而不是实际的屏幕尺寸。相反,大小是以dp为单位的宽度或高度,可用于您的活动窗口。
和
还要注意
Action Bar
被视为应用程序窗口空间的一部分,虽然您的布局没有声明它,因此它减少了布局的可用空间,您必须在设计中考虑它。 / p>
因此Eclipse不允许我在物理设备实际选择的正确布局上进行设计。
当使用640 x 360 dp
在Samsung Galaxy S3(也是layout-h616dp
)上进行实际测试时,Android系统会使用较低的layout-h450dp
布局,根据Google文档,这是正确的,当我然后将layout-h616dp
重命名为layout-h615dp
Android系统选择layout-h615dp
进行渲染,这与预期相符,因为可用空间约为640dp
(总计)减去25dp
(对于状态栏)= 615dp
。
我的问题:这是Eclipse中的一个错误,如果是这样,是否有解决方法以便可以在正确的布局上正确设计?
编辑:简而言之,Eclipse使用总屏幕dp
,而在实际运行应用程序时,Android系统仅使用可用的'dp'(应该如此)