根据屏幕尺寸实施布局

时间:2020-03-20 04:11:42

标签: android android-layout android-constraintlayout

我想知道是否可以根据手机的屏幕尺寸(而不是平板电脑,手表等)使用不同的布局。我已经看过this文章,但在实现建议方面似乎没有任何成功。仅出于上下文考虑,我对所有布局都使用ConstraintLayout。我最初是使用Pixel 3 XL设计UI的,当我尝试在任何其他设备上运行应用程序时,UI看起来都变形了,它的元素不在应有的位置,而且一切都很糟糕。

如何为每种屏幕尺寸制作和分配布局?还有什么我可以代替的吗?

2 个答案:

答案 0 :(得分:1)

Google建议为特定像素创建不同的res / layout目录,例如res / layout-1024x720,res / layout-1280x720,res / layout-1920x1080等。

答案 1 :(得分:0)

@Inso是正确的,您可以将不同版本的资源保存在不同版本的res /子文件夹中(例如layout-1280x720或drawable-1920x1080)。这不仅适用于布局文件,还适用于可绘制对象和任何其他资源目录,并且您不仅可以根据屏幕分辨率,还可以根据设备API屏幕大小及其他来创建不同的版本。

我建议您阅读以下documentation,其中介绍了所有可能的方法。

也可能是您为应用选择了错误的布局类型。您应该查看关于布局类型的可用文档(那里有一堆),看看是否ConstraintLayout可能是错误的选择。

我还建议使用一组不同的虚拟设备(来自仿真器),它们具有不同的屏幕尺寸和运行不同的API,以便您可以立即进行测试,并测试它们在不同网络条件下的性能