如何为多种Android屏幕尺寸制作布局?

joe*_*ich 28 layout android density-independent-pixel

我已经做了一些关于构建适用于多种屏幕尺寸的布局的研究,我正在寻找一些澄清.

通常的做法是为三种屏幕尺寸(小,中,大)中的每一种制作单独的布局文件,还是可以通过更简单的方法完成此操作?

我一直在大屏幕设备上测试我的项目,即使我使用DIP(密度无关像素)进行填充,边距等,当我在较小的屏幕上查看时,它仍然会重新填充.我应该为中型屏幕设计我的项目,然后让Android适当地扩展它吗?

我不确定这是不是一个好问题,但我正在寻找设计多种屏幕尺寸的常见做法.你是做什么?

编辑:除此之外,例如,假设我有一个位于屏幕底部40dip的按钮,我应该写40dip,还是应该使用像40*screenWidth/blahblah之类的像素数学这样根据用户的屏幕尺寸进行缩放?我对UI的经验有限......

ada*_*amp 14

屏幕尺寸有两个轴需要考虑:物理尺寸和密度.密度通过提供适当的下降和缩放资源的测量来处理.但密度并不总是意味着大小,反之亦然.有关机制的更多信息,请参见http://developer.android.com/guide/practices/screens_support.html.

根据您支持的每个屏幕分辨率,不常见或建议使用不同的布局,但为不同的大小类(小,中,大)设计不同的布局是完全合理的.根据应用程序的不同,添加,删除或重新定位某些导航元素可能会使不同大小的屏幕受益.

在特定大小的类中,您应该确保您的布局能够容忍精确屏幕分辨率的差异.正如Falmarri建议的那样,使用相对布局,权重和其他可用工具让您的布局优雅地伸展.