如何使用Blackberry 10中的Cascades中的Qt/qml/C++将一个qml文件中的标签文本从另一个qml



假设资产文件夹中的一个文件是RoomDetails.qml:

import bb.cascades 1.0
import "commons"
Page {
    Container {
         PageHeader{}
         //rest of the code
    }  
 }

assets/commons文件夹中的另一个文件是PageHeader.qml:

import bb.cascades 1.0

    Container {
         Label {
             id: dynamicLabel
         }
         //rest of the code
     }

现在,我想将dynamicLabel.textRoomDetails.qml更改为"房间详细信息",并类似地从包含PageHeader的其他qml文件更改。这个问题的解决办法是什么?它可以使用Qt、QML或C++。提前谢谢。

首先,我认为您不需要将Page作为PageHeader的根元素。

以下是PageHeader的外观,您可以定义一个如下所示的属性标题,您可以从创建它的QML访问它。

import bb.cascades 1.0
Container {
    property alias title: dynamicLabel.text
    Label {
        id: dynamicLabel
    }
    //rest of the code
}

在RoomDetais QML中,您可以像下面这样使用PageHeader,并通过访问标签的title属性来访问标签。

import bb.cascades 1.0
import "commons"
Page {
    Container {
         PageHeader{
             title: "Room Details"
         }
         //rest of the code
    }  
 }

最新更新