根据纵横比缩放所有UI元素以适应屏幕-Android

根据纵横比缩放所有UI元素以适应屏幕-Android,android,user-interface,Android,User Interface,我为我的应用程序创建了如下UI: 所有的元素都是光栅,它们的大小都适合我手机的分辨率,它们做得很好。然而,我希望这个用户界面可以扩展到任何屏幕分辨率,同时保持纵横比。我试过一些方法,但没有用。你们会怎么做?你能给我指一下正确的方向吗?Thanx您必须: 在清单中明确声明应用程序支持的屏幕大小:声明对不同屏幕大小的支持也会影响系统在更大屏幕上绘制应用程序的方式,特别是应用程序是否在屏幕兼容模式下运行。 为不同的屏幕密度提供不同的位图可绘制性如果应用程序仅为基线、中等屏幕密度mdpi提供位图可绘制性

我为我的应用程序创建了如下UI:

所有的元素都是光栅,它们的大小都适合我手机的分辨率,它们做得很好。然而,我希望这个用户界面可以扩展到任何屏幕分辨率,同时保持纵横比。我试过一些方法,但没有用。你们会怎么做?你能给我指一下正确的方向吗?Thanx

您必须:

在清单中明确声明应用程序支持的屏幕大小:声明对不同屏幕大小的支持也会影响系统在更大屏幕上绘制应用程序的方式,特别是应用程序是否在屏幕兼容模式下运行。 为不同的屏幕密度提供不同的位图可绘制性如果应用程序仅为基线、中等屏幕密度mdpi提供位图可绘制性,则系统在高密度屏幕上会将其放大,在低密度屏幕上会将其缩小。这种缩放会导致位图中出现瑕疵。为了确保位图看起来最好,您应该为不同的屏幕密度提供不同分辨率的替代版本

为不同的屏幕尺寸提供不同的布局


有关更多详细信息:

您是自己渲染图像还是使用内置的UI窗口小部件按钮、复选框、。。。具有备用背景?它们都是默认的ImageView。我只是希望它们都保持在一起,在拉伸以适应屏幕时不会断裂或出现故障。我建议您将按钮的背景设置为九块,使用按钮切换图像视图,并使用九块作为这些按钮的背景。您还必须将字体添加到应用程序中,并设置字体颜色的样式。在这里阅读更多关于九个补丁的内容:那么没有什么可以实现这样的行为?提供不同的位图以支持低、中、高和超高密度屏幕将有助于您在所有屏幕密度上实现良好的图形质量和性能。阅读本文了解更多信息:我只需要调整我的ui以覆盖整个屏幕,而不考虑资源,仅此而已。请将您的XML放入问题中,看看是否有帮助