awtk/docs/self_layouter_default.md
2020-04-09 07:37:09 +08:00

2.5 KiB
Raw Blame History

缺省的控件自身布局器(self_layouter_default)介绍

概述

缺省布局中有5个参数

  • x x坐标
  • y y坐标
  • w 控件宽度
  • h 控件高度
  • floating 是否为浮动布局。 如果设置为true该控件不受父控件的children_layouter的影响。

二、像素方式

直接指定控件的x/y/w/h的像素值这是缺省的方式也是最缺乏灵活性的方式。

示例:

  • 在XML界面描述文件中
<button x="10" y="5" w="80" h="30" text="ok"/>
  • 在代码中:
widget_move_resize(btn, 10, 5, 80, 30);

三、百分比

  • x/w的值如果包含"%",则自动换算成相对其父控件宽度的百分比。
  • y/h的值如果包含"%",则自动换算成相对其父控件高度的百分比。

示例:

  • 在XML界面描述文件中
<button x="10%" y="10" w="50%" h="30" text="ok"/>
  • 在代码中(看起来要麻烦一点)
widget_set_self_layout_params(btn, "10%", "10", "50%", "30");
widget_layout(btn);

在代码中设置控件的布局参数,方法类似,后面就不再举例子了。

四、水平居中

让控件在水平方向上居中只需要将x的值设置成"c"或者"center"即可。

示例:

<button x="center" y="10" w="50%" h="30" text="ok"/>

五、垂直居中

让控件在垂直方向上居中只需要将y的值设置成"m"或者"middle"即可。

示例:

<button x="center" y="middle" w="50%" h="30" text="ok"/>

六、位于右边

让控件位于父控件的右侧只需要将x的值设置成"r"或者"right"即可。

示例:

<button x="right" y="10" w="50%" h="30" text="ok"/>

如果还想离右侧有一定距离可以在right后指定距离的像素。

示例:

<button x="right:20" y="10" w="50%" h="30" text="ok"/>

七、位于底部

让控件位于父控件的底部只需要将y的值设置成"b"或者"bottom"即可。

示例:

<button x="10" y="bottom" w="50%" h="30" text="ok"/>

如果还想离底部有一定距离可以在bottom后指定距离的像素。

示例:

<button x="10" y="bottom:20" w="50%" h="30" text="ok"/>

八、宽度和高度为负数

无论是像素模式还是百分比模式,宽度和高度均可为负数。

  • 宽度为负数。其值为父控件的宽度+该负值。
  • 高度为负数。其值为父控件的高度+该负值。

九、浮动布局

如果floating设置为true该控件不受父控件的children_layouter的影响。

示例:

<button x="10" y="20" w="50" h="30" floating="true" "text="ok"/>