It's okay I figured it out.
On clicked i should put it like this,
@ //Page1
pageStack.push(Qt.resolvedUrl("Page2.qml"), {itemUrl2:products2, itemTitle2:category1})
//set the properties in the bracket, linking to the name in the XmlListModel
//Page2
Page {
id: container2
property string itemUrl2: "" //set the property here
property string itemTitle2: ""
orientationLock: PageOrientation.LockPortrait
FontLoader { id: fixedFont; source: "../fonts/CANON.ttf"}
//---------------------------------xml----------------------------------------------
XmlListModel {
id: products2
property string feedUrl: ""
property bool loading: status == XmlListModel.Loading
source: itemUrl2 //put the itemUrl2 here as source
query: "/plist/dict/array/dict"
XmlRole { name: "icon2"; query: "string[1]/string()" }
XmlRole { name: "category2"; query: "string[2]/string()" }
XmlRole { name: "products3"; query: "string[3]/string()" }
}
@
Found this from, http://harmattan-dev.nokia.com/docs/library/html/qt-components/qt-components-meego-pagestack.html under Advanced Usage.
Can use both of these ways for deep linking.
@pageStack.push
([
{ page: pageOne, properties: { one: 1 } },
{ page: Qt.resolvedUrl("two.qml"), properties: { two: 2 }},
]);
//or this
pageStack.push(Qt.resolvedUrl("foo.qml"), {foo: bar, foz: baz }); @