多屏支持的最佳布局配置

时间:2018-08-02 18:39:20

标签: android android-layout layout

我花了最后一周为我的应用程序更新创建了所有这些织补布局,但我仍然在应用程序评论中收到有关布局的投诉!我是Android的新手,还不确定要获得多屏支持的最佳途径!

My Android Layouts

这是我到目前为止所拥有的!我觉得自己是个白痴,浪费了很多时间以错误的方式做每一件事。很乐意就我如何创建最佳配置以适应除可穿戴设备之外的所有屏幕的建议,

本杰明

这里还有另外一张图片可能对我的情况有帮助

the whole view

2 个答案:

答案 0 :(得分:0)

以下回答是一般性的,因为问题不是特定的:

支持多个屏幕尺寸非常棘手。您需要更多地考虑“环绕内容和匹配父对象”,而不是实际的dp宽度和高度。 dp在所有屏幕上都会为您提供相同的长度,并且在大多数情况下,这不是您想要的。使用RelativeLayout来设置布局相对于其他布局的位置,或者使用LinearLayout来对齐布局和视图。 最重要的是要避免设置固定的宽度和高度,除非您需要这样做(例如,您可能希望在所有屏幕尺寸上都将按钮的高度设置为固定)。

答案 1 :(得分:0)

使用LinearLayout并在LinearLayout的子视图上设置布局权重可能是应用灵活设计的好方法。显然,在适合使用LinearLayout的情况下。

例如,您可能具有带有两个LinearLayout子视图的LinearLayout。您希望一个视图占据三分之一的显示,另一个视图则占据三分之二。可以为多个不同的显示器设置此设置,因为在较小的设备上可能是300dp和600dp,但在较大的设备上可能会非常不同。但是,通过使用布局权重,将自动计算比例。例如:

<LinearLayout
  android: orientation="vertical"
  android: layout_width="match_parent"
  android: layout_height="match_parent">

   <LinearLayout
  android: orientation="vertical"
  android: layout_width="match_parent"
  android: layout_height="0dp"
  android: layout_weight="1">

    ...

  </LinearLayout>

  <LinearLayout
  android: orientation="horizontal"
  android: layout_width="match_parent"
  android: layout_height="0dp"
  android: layout_weight="2">

    ...

  </LinearLayout>

</LinearLayout>