gpt4 book ai didi

android - 为 TableView 中的新项目设置动画

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:22:24 24 4
gpt4 key购买 nike

我正在使用 TableView 来显示 SQLite 数据库的内容。用户单击其中一个可检查按钮,右侧的表格将通过 LocalStorage API 读取。因此,该模型始终是新的。

因为模型总是新的,加载新表在视觉上并不吸引人(所有条目一次显示)。

我的想法是在添加行时为行的高度设置动画(从 0 开始以线性方式)

这可以在不从头重新实现 rowDelegate 的情况下完成吗?

最佳答案

是的,这是可能的。

TableView 使用 ListView 作为内部对象。您可以使用属性 __listView 访问它。

使用 ListView,可以指定当 View 中的项目因修改 View 模型而发生更改时应应用的转换。

Transition {
id: populateTransition
NumberAnimation { properties: "y"; duration: 300 }
}

TableView {
TableViewColumn {
role: "title"
title: "Title"
width: 100
}
model: libraryModel
Component.onCompleted: {
this.__listView.populate = populateTransition
this.__listView.add = populateTransition
}
}

附言此解决方案依赖于修改内部对象,不保证跨不同的 Qt 版本或平台工作。

关于android - 为 TableView 中的新项目设置动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32636882/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com