В моем ListView у меня есть кнопка добавления, которая добавляет ListElement в конец ListView. Каждый ListElement имеет кнопку удаления в своей строке, и когда он щелкает, я анимирую его, удаляя, но я также хочу анимировать любые элементы ниже при перемещении вверх.
ListView {
id: myListView
delegate: myListViewDelegate
model: myListModel
anchors.fill: parent
}
ListModel {
id: myListModel
}
Component {
id: myListViewDelegate
Item {
id: rowContainer
height: 40
width: myListView.width
Text {
id: labelText
text: label
anchors {
left: parent.left
verticalCenter: parent.verticalCenter
}
}
CustomButton {
anchors {
right: parent.right
rightMargin: 8
verticalCenter: parent.verticalCenter
}
width: 32
height: width
buttonRadius: width/2
iconSource: "qrc:/image/Delete.png"
onReleased: deleteRowAnimation.start()
}
ParallelAnimation {
id: deleteRowAnimation
SmoothedAnimation {velocity: 300; target: rowContainer; properties: "x"; to: -rowContainer.width}
onRunningChanged: if(!running) deleteRow(index)
}
}
}
Позже в коде ..
function deleteRow(index) {
myListModel.remove(index)
}
Я могу анимировать уходящую (удаляемую) строку, но если под ней есть строки, они подпрыгивают, чтобы заполнить место, где была удалена строка. Я бы хотел, чтобы это был плавный анимированный переход.