从onTouch方法中访问上下文属性

时间:2013-01-16 11:35:37

标签: qml blackberry-10

我在app的main方法中设置了一个上下文对象:

// Load the UI description from main.qml
QmlDocument *qml = QmlDocument::create("asset:///main.qml").parent(&app);

// Make the Corporate object available to the UI as context property
qml->setContextProperty("_corporate", new Corporate(&app));

但我无法从onTouch方法中访问_corporate对象,同时在onTriggered方法中正确访问_corporate对象。这是代码:

ListView {
                dataModel: _corporate.model
                id: myListView
                listItemComponents: [ 
                      ListItemComponent {
                          id: groupItemComponent
                          type: "groupItem"

                          StandardListItem {
                              id: groupListItem
                              title: qsTr ("%1").arg(ListItemData.firstRow)
                              description: ListItemData.secondRow
                              onTouch: {

                                  _corporate.currentView = 3
                              }
                          }
                      }
                  ]
                onTriggered: {
                      _corporate.currentView = 3

                }
}

我做错了什么?

1 个答案:

答案 0 :(得分:1)

无法从ListItemComponent中访问

_corporate。

您必须以其他方式提供访问权限:

  • 访问:groupListItem.ListItem.view.getCorporate();
  • 在listView中定义一个javascript函数:function getCorporate(){return _corporate;}