Qt QML ListView页眉和页脚项目?
我想以类似于调用Qt QML ListView页眉和页脚项目?,qt,listview,qml,Qt,Listview,Qml,我想以类似于调用currentItem的方式访问QMLListView中的页眉和页脚项,以获取当前委托实例,但我不知道如何访问。如果您有任何建议,我将不胜感激。您应该将页眉/页脚项目分配给一些外部参考,如下所示: Window { property Item listHeaderItem: null Component { id: listHeaderComponent Item { id: headerItem width: listView.w
currentItem
的方式访问QMLListView
中的页眉和页脚项,以获取当前委托实例,但我不知道如何访问。如果您有任何建议,我将不胜感激。您应该将页眉/页脚项目分配给一些外部参考,如下所示:
Window {
property Item listHeaderItem: null
Component {
id: listHeaderComponent
Item {
id: headerItem
width: listView.width; height: 0
Component.onCompleted: rootWindow.listHeaderItem = headerItem
}
}
ListView {
header: listHeaderComponent
}}
您可以访问函数中的页眉/页脚对象,如
if(header)
{
var headerItem = header.createObject(null);
// do stuff with headerItem
headerItem.destroy();
}
if(footer)
{
var footerItem = footer.createObject(null);
// do stuff with footerItem
footerItem.destroy();
}
有什么原因不能像访问
currentItem
属性那样访问和footer
属性吗?你想达到什么目的?我想计算ListView内容的有效高度,包括动态页眉/页脚/委托。这似乎是一个有效的方法,如果有点不合适的话,因为每次使用ListView组件时都需要分配项。我添加了我的答案以显示我最终使用的方法。