如何将 ListModel 与 SwipeView 一起使用?
How Use ListModel with SwipeView?
我有一个 c++ class,我在 qml 中注册了它,这个 class 有一个继承自 QAbstractListModel
的模型,现在我想要这个模型带有 SwipeView
Manager {
id: manager
}
SwipeView {
id: sv
model:manager.listModel /// but it don't have model property
}
但是 SwipView 没有模型 属性? id 应该如何将页面与此模型一起动态添加到 thsi swipeview?
你可以用Repeater作为例子the docs:
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 2.5
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
ListModel{
id: mymodel
ListElement{
name: "name1"
background: "red"
}
ListElement{
name: "name2"
background: "salmon"
}
ListElement{
name: "name2"
background: "gray"
}
}
SwipeView{
id: view
anchors.fill: parent
Repeater{
model: mymodel
Rectangle{
color: model.background
Text {
anchors.centerIn: parent
text: model.name
}
}
}
}
}
我有一个 c++ class,我在 qml 中注册了它,这个 class 有一个继承自 QAbstractListModel
的模型,现在我想要这个模型带有 SwipeView
Manager {
id: manager
}
SwipeView {
id: sv
model:manager.listModel /// but it don't have model property
}
但是 SwipView 没有模型 属性? id 应该如何将页面与此模型一起动态添加到 thsi swipeview?
你可以用Repeater作为例子the docs:
import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 2.5
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
ListModel{
id: mymodel
ListElement{
name: "name1"
background: "red"
}
ListElement{
name: "name2"
background: "salmon"
}
ListElement{
name: "name2"
background: "gray"
}
}
SwipeView{
id: view
anchors.fill: parent
Repeater{
model: mymodel
Rectangle{
color: model.background
Text {
anchors.centerIn: parent
text: model.name
}
}
}
}
}