7

我意识到我不是 100% 确定放置某些 UI 元素的最佳方式是什么,以便它出现在所有设备上的同一位置。

到目前为止,这些是选项:

  1. dp为每个设备设置填充
  2. 在此图像上方制作View并更改每个设备的填充
  3. 在代码中计算屏幕大小,Java code并以泛型方式设置其定位。例如,将图像设置为距顶部 1/5 屏幕高度,并根据当前设备的屏幕高度应用此公式。
  4. dp与第 2 点类似,但我没有使用 fixed ,而是使用了有layout_weight问题的元素

什么似乎是最好的方法?

有没有我在这里没有提到的更好的方法?

谢谢

4

1 回答 1

6

两个最佳选择如下:

  1. 在代码中 - 计算屏幕大小并使用屏幕百分比。
  2. 用于layout_weight您的视图和weight_sum父视图。

代码方法的一个小例子 - 假设您希望 View 正好是屏幕宽度的 25%:

 WindowManager manager = (WindowManager) _context.getSystemService(Activity.WINDOW_SERVICE);
 int screenWidth = manager.getDefaultDisplay().getWidth();
 YOUR_VIEW.getLayoutParams().width = (int) (screenWidth * 0.25);
于 2012-10-19T13:31:59.770 回答