import QtQuick 2.15
import QtQuick.Window 2.15
import QtQuick.Controls 2.15
Window {
visible: true
width: 400
height: 400
ListView {
id: list
anchors.fill: parent
clip: true
spacing: 0
onContentYChanged: console.log("onContentYChanged: " + contentY)
onContentHeightChanged: console.log("onContentHeightChanged: " + contentHeight)
model: ListModel {
id: myModel
ListElement {name: "Item 1";type: "A"}
ListElement {name: "Item 2";type: "A"}
ListElement {name: "Item 3";type: "B"}
}
delegate: Rectangle {
width: parent.width
height: 50
color: (index % 2 == 1) ? "#5678a2" : "#88a345"
Text {
anchors.verticalCenter: parent.verticalCenter
text: name
}
MouseArea {
anchors.fill: parent
onClicked: {
console.log("remove: " + index + ", contentY:" + list.contentY)
myModel.remove(index)
}
}
}
section.property: "type"
section.delegate: Rectangle {
height: 30
Text {
anchors.verticalCenter: parent.verticalCenter
text: section
}
}
displaced: Transition {
NumberAnimation { properties: "x,y"; duration: 500; easing.type: Easing.OutCubic }
}
remove: Transition {
NumberAnimation { property: "opacity"; from: 1.0; to: 0; duration: 500 }
NumberAnimation { property: "scale"; from: 1.0; to: 0; duration: 500 }
}
}
}
qml: onContentHeightChanged: 300
qml: onContentHeightChanged: 240
qml: onContentHeightChanged: 210
qml: remove: 0, contentY:0
qml: onContentYChanged: 80
qml: onContentHeightChanged: 160
我用QT5.13.1尝试了您的代码。目前正在下载QT5.15。目前,它看起来像是部分
的bug,因为我在BugTracker上发现了许多未关闭的bug报告。我可以给你建议两种解决问题的方法。
我用Meself测试的第一种解决方案。以下是您尝试它所需更改的内容:
ListView.onRemove: SequentialAnimation {
PropertyAction { target: wrapper; property: "ListView.delayRemove"; value: true }
ParallelAnimation {
NumberAnimation { target: wrapper; property: "opacity"; to: 0; duration: 500 }
NumberAnimation { target: wrapper; property: "scale"; to: 0; duration: 500 }
}
PropertyAction { target: wrapper; property: "ListView.delayRemove"; value: false }
}
我没有尝试实现它,但我可以想象有这样一个模型:
ListModel {
id: myModel
ListElement { type: "category"; name: "cat1" }
ListElement { name: "delegate1"; type: "delegate"; catrgory: "cat1"}
ListElement { name: "delegate2"; type: "delegate"; catrgory: "cat1"}
ListElement { name: "delegate3"; type: "delegate"; catrgory: "cat1"}
ListElement { type: "category"; name: "cat2" }
ListElement { name: "delegate4"; type: "delegate"; catrgory: "cat2"}
若要按照您的意愿使用此方法,您需要相应地对委托进行castomize,并相应地对删除函数进行castomize,这将导致与节
正常工作时相比,代码要复杂得多。
UPD:5.15中同样的问题
我有一个底部导航视图,其中显示了所选项目的背景 下面是底部导航视图xml代码: 我想删除显示在所选项目顶部的顶部填充,这样背景可以匹配底部条的高度
我正在尝试实现一个MapView,其中最上面是一个SurfaceView,它们都单独工作得很好,但是当我将它们都放在FrameLayout中时,我无法获得 getHolder().getSurface().isValid() 如真的。 XML: SurfaceView代码: 公共类BallSurfaceView扩展SurfaceView实现Runnable { 在MapActivity中创建: 受
问题内容: 因此,在尝试使用flexbox创建有用的模式时,我发现了似乎是浏览器的问题,并且想知道是否存在已知的修复程序或解决方法-或有关解决方法的想法。 我要解决的问题有两个方面。首先,使模态窗口垂直居中,这可以按预期工作。第二个是使模式窗口滚动-从外部滚动,因此整个模式窗口滚动,而不是其中的内容滚动(这样您就可以使用下拉菜单和其他可以扩展到模式范围之外的UI元素-例如自定义日期选择器等) 但是
我有一个旧的谷歌云项目,我就是不能删除。 当我通过网站这样做时,我会得到一个“项目服务未知错误跟踪号码:342342354345” 当我使用命令通过CLI执行此操作时: gcloud项目删除“项目” 我得到一个错误: 错误:(gcloud.projects.delete)失败\u前提条件:前提条件检查失败。 “@type”:类型。古格里皮斯。com/谷歌。rpc。资源信息 资源名称:项目/7777
问题内容: 我的机器上安装了Java 6和7。Gradle使用1.7(使用选中)。但是我需要编译代码以与Java 1.6兼容。据我了解的文档,我可以使用属性来实现(并间接使用,默认为 )。 因此,我将以下行添加到了我的构建文件中(在根级别,而不是在任何闭包中): (确保在某些试验中我也添加了,但这应该没有什么不同) 为了检查结果是否实际上与1.6兼容,我将产生的jar解压缩到文件夹中,并在遇到的第
问题内容: 最近我收到以下错误: 致命异常:NSInternalInconsistencyException无效更新:部分0中的项目数无效。更新(13)之后现有部分中包含的项目数必须等于更新(12)前该部分中包含的项目数,再加上或减去从该部分插入或删除的项目数(插入0,删除0),再加上或减去从该部分移入或移出的项目数(移入0,移出0)。 我的tvOS客户端中的以下代码中发生错误: 我在集合视图中仅