Item {
anchors.fill: parent
// 视图
ListView {
id: jielist
anchors.fill: parent
model: ['zhangsan', 'lisi'] // model:管数据的
delegate: ItemDelegate {
text: modelData
background: Rectangle {
color: getColor()
function getColor() {
let colorObject = Jie.getColorRandom()
return Qt.rgba(colorObject.red, colorObject.green, colorObject.blue )
}
}
}
ScrollBar.vertical: ScrollBar {} // 可以拖动的滚动条
Component.onCompleted: {
// 添加元素的方法
let modelArray = jielist.model
modelArray.push('wangwu')
jielist.model = modelArray // 这样才能生效到视图
}
}
}
注意:上面的modelData是自带的
打model是JSON对象时:
model: [
{
name: 'zhangsan',
age: 26
},
{
name: 'lisi',
age: 36
}
]
...
text: 'name:'+modelData.name + 'age:' + modelData.age // 输入name和age时都没有拼写提示
...
onClicked: console.log(JSON.stringify(modelData)) // 打印JSON对象必须使用这个函数转换
ListView还自带属性currentIndex,是当前对象的索引,delegate也有一个属性是index,两个索引之间可以进行===判断是否一直来作为某些操作得到条件