缩放对于所有UI元素的纵横比,以适应屏幕 - 安卓

问题描述:

我已经为我的应用程序的用户界面,看起来像这样:缩放对于所有UI元素的纵横比,以适应屏幕 - 安卓

enter image description here

所有的元素都是栅格和它们的大小是由以适应我手机的决议,他们做得很好。不过,我希望这个用户界面可以扩展到任何屏幕分辨率,同时保持宽高比。我尝试了一些方法,但无济于事。你们会怎么做?你能指点我正确的方向吗?感谢名单

+1

你自己绘制图像,或者使用内置的UI控件(按钮,复选框,.. )有不同的背景? – Nicklas 2015-04-04 13:26:56

+0

它们都是默认的ImageView。我只是希望他们都能够保持冷静,在伸展到适合屏幕的时候不会分裂或者不舒服。 – Tomus 2015-04-04 13:28:03

+1

我建议您将按钮的背景变成九个补丁,使用按钮切换ImageView,然后使用九个补丁作为这些按钮的背景。您还必须将字体添加到您的应用程序,并设置字体颜色的样式。请阅读有关9补丁的更多信息:http://developer.android.com/guide/topics/graphics/2d-graphics.html#nine-patch – Nicklas 2015-04-04 13:31:23

你必须:

  • 在屏幕尺寸您的应用程序清单显式声明支持:“为不同的屏幕尺寸声明支持也能影响系统如何吸引你的更大的应用程序的屏幕,特别是,无论您的应用程序是否以屏幕兼容模式运行。“
  • 针对不同屏幕密度提供不同的位图资源“,如果你的应用程序提供位图资源只为基准,中等屏幕密度(MDPI),那么系统扩展起来的高密度屏幕上时,并缩放它们当你在低密度屏幕上时,这种缩放会导致位图中的伪像,为了确保你的位图看起来是最好的,你应该在不同的屏幕密度下以不同的分辨率包含替代版本。

  • 提供不同的布局不同的屏幕大小

了解更多详情:http://developer.android.com/guide/practices/screens_support.html

+0

所以没有什么可以实现这样的行为? http://jsfiddle.net/T6PvL/ – Tomus 2015-04-04 14:15:01

+0

提供不同的位图来支持低,中,高和超高密度屏幕将帮助您在所有屏幕密度上实现良好的图形质量和性能。 – 2015-04-04 14:29:45

+0

阅读更多信息:http://developer.android.com/training/multiscreen/screendensities.html – 2015-04-04 14:30:39