代码:
import QtQuick 2.0
import QtQuick.Window 2.0
import QtQuick.Controls 2.4
import QtGraphicalEffects 1.12
Window {
visible: true
width: 250
height: 350
title: qsTr("ListView")
property bool refreshFlag: false
Rectangle{
width: parent.width
height: -listView.contentY
color: "cyan"
Label{
anchors.centerIn: parent
text:"下拉刷新"
visible:listView.contentY
}
}
BusyIndicator{
id:busy
z:4
running: false
anchors.horizontalCenter: parent.horizontalCenter
anchors.top: parent.top
anchors.topMargin: parent.height/3.
Timer{
interval: 2000
running: busy.running
onTriggered: {
busy.running = false
}
}
}
ListView{
id:listView
anchors.fill: parent
model: 30
onContentYChanged: {
if(-contentY > 30){
refreshFlag = true
console.log("刷新刷新刷新刷新刷新刷新")
}
if(contentHeight>height && contentY-originY > contentHeight-height+30)
{
console.log("加载加载加载加载加载加载")
}
}
onMovementEnded: {
if(refreshFlag){
refreshFlag = false
busy.running = true
}
}
delegate: Rectangle{
width: listView.width
height: 70
color: "white"
Label{
id:txt
anchors.centerIn: parent
font.pointSize: 20
text: index
color: "black"
}
}
}
}
``