【问题标题】:Support different screen sizes dynamically动态支持不同的屏幕尺寸
【发布时间】:2018-08-08 09:27:18
【问题描述】:

我有一个在自定义视图上绘制圆的应用程序,它们的半径具有硬编码值。然而,它在屏幕尺寸较小的设备上看起来不太好,因为圆圈看起来更大,而且它们的初始坐标也是硬编码的,所以因为圆圈在弹跳,它们往往会离开屏幕。

示例:圈 1 x = 50, y = 600 r = 200、圈 2 x = 550, y= 130, r = 150

如何定义它们的半径和初始位置,以便它们适合所有屏幕尺寸?

【问题讨论】:

  • 让您拥有与设备成比例的屏幕单元。例如,您的屏幕总是“1000”宽。如果设备是 720px 宽,那么屏幕的每个 px 等于 1000/720。使用这个基本常量,您可以在屏幕上放置任何东西,无论设备如何,它看起来都一样。高度是另一个问题:]
  • 感谢您的建议,这是做这些事情的好方法吗?你说的高度是什么意思是个问题
  • 您的布局设计需要具有灵活的高度,因为几乎每个设备都有不同的高度。在过去,我已经定义了宽度和高度(纵横比)并创建了一个缓冲区(或填充),它的大小不能完全适合屏幕,以便我可以保持布局的纵横比。

标签: android android-layout android-custom-view screen-size


【解决方案1】:

使用 SDP - 可缩放尺寸单位 库来支持不同的屏幕。

一个 android SDK,它提供了一个新的尺寸单位 - sdp (scalable dp)。此尺寸单位随屏幕尺寸缩放。它可以帮助Android开发者支持多屏。 这是LINK

【讨论】:

  • 试过了,但不能很好地扩展
  • @Krul 当你使用这个库设置大小时会发生什么?
猜你喜欢
  • 1970-01-01
  • 2015-09-23
  • 2019-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多