使用AbsoluteLayout定位元素

时间:2016-10-28 18:07:13

标签: nativescript

让AbsoluteLayout占据整页。

ui报告宽度为480。

我创建了一个标签并将其定位在240偏移

        titleLabel.text = "Label";
        titleLabel.width = 20;
        titleLabel.height = 20;

        layout.addChild( titleLabel );

        AbsoluteLayout.setLeft( titleLabel, "240" );
        AbsoluteLayout.setTop( titleLabel, "20" );`

期望它在中途对面?

但它更接近右边缘。

有点困惑......

1 个答案:

答案 0 :(得分:0)

将标签视为矩形,setLeft将使矩形的左侧与整个视图进行比较。在您的情况下,父视图的宽度为480,而setLeft的子视图(标签)为240.标签将在左侧从240位开始渲染,其余部分为将根据该标签绘制标签。

例如,您的标签的宽度为50.然后您应该将其设置为240 - 50/2 = 215

AbsoluteLayout.setLeft(titleLabel, "215")