Android如何评估视图大小以在所有设备中保持相同的比例

时间:2015-04-03 00:29:32

标签: android view resize screen device

我正在寻找一种方法来保持所有设备上的视图大小比例。我尝试了许多数学计算(例如混合屏幕尺寸,密度,百分比等),但没有找到任何解决方案,每个测试设备只有不同的结果。

让我举一个例子:假设我在sw-360dp上测试应用程序,最终找到一个有效的大小视图。

relativeLayoutParams.width  = 150;

relativeLayoutParams.height = 250;

这样可以创建一个大小约为屏幕宽度的1/3和屏幕高度的1/3的视图。

如何动态到达宽度和高度的值,让视图保持1/3宽度到1/2高度的宽高比?至少我认为文档建议的内容是:"从屏幕大小的百分比计算精确的视图大小(或边距,填充等)"。

或者我误解了它?

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以通过定义比率来获取设备屏幕尺寸

    Display display = getWindowManager().getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);

然后,

    width = (int) size.x * 1/3 ; 
    height = (int) size.y * 1/2 ;