如何使用锚点在 Flickable 中垂直 space QML 对象?

How to space vertically QML objects in a Flickable using anchors?

如何在 Flickable 中使用锚点 space 垂直 QML 对象?

代码片段(在此消息下方复制)应该显示 C++ 模型提供的文本和图像(C++ 对象在此片段中命名为 Global)。

我收到一条错误消息:

anchors { top: _lblMsg1.bottom+8; }

您明白我要做什么:我希望图像的顶部比其上方文本的底部低 8 个像素。

我收到一条错误消息,尽管它似乎在工作。

你能告诉我如何正确地做到这一点吗?

<...>
Flickable {
    anchors.fill: parent;

    Label {
        id: _lblMsg1;
        text: Global.dataMessages.byId(Global.currService.msg_text1_id);
        anchors { top: parent.top; left:parent.left; right: parent.right; }
    }
    Image {
        id: _imgUri1;
        cache: false;
        source: (Global.currService && Global.currService.img_uri1 ? Global.currService.img_uri1 : "");
        asynchronous: true;
        anchors { top: _lblMsg1.bottom+8; left:parent.left; right: parent.right;}
        horizontalAlignment: Image.AlignHCenter;
        fillMode: (Image.width > 400 ? Image.Stretch : Image.Pad);
    }
<...>
}

锚点只接受其他锚点线作为它们的值。但是,您可以使用边距来调整锚定,如下所示:

anchors { 
    top: _lblMsg1.bottom;
    topMargin: 8;
    left:parent.left;
    right: parent.right;
}