2011-11-11 21 views
2

QML ListViewのヘッダーとフッターの項目に、currentItemを呼び出すのと同じ方法でアクセスして、現在のデリゲートのインスタンスを取得したいのですが、どのように把握できません。私は何かアドバイスをいただければ幸いです。QML ListViewヘッダーとフッターアイテム?

+0

にあなたができる任意の理由を'' header''(http://doc.qt.nokia.com/4.7-snapshot/qml-listview.html#header-prop)と 'footer'プロパティに' currentItem'プロパティと同じようにアクセスしないでください?あなたは何を達成しようとしていますか? – sjwarner

+0

動的なヘッダー/フッター/デリゲートを含むListViewコンテンツの有効高さを計算したかったのです。 – Prismatic

答えて

3

以下のようにして、いくつかの外部基準にヘッダ/フッタ項目を割り当てる必要があります:あなたが関数内で、ヘッダー/フッターのオブジェクトにアクセスすることができます

Window { 
    property Item listHeaderItem: null 
    Component { 
    id: listHeaderComponent 
    Item { 
     id: headerItem 
     width: listView.width; height: 0 
     Component.onCompleted: rootWindow.listHeaderItem = headerItem 
    } 
    } 
    ListView { 
    header: listHeaderComponent 
    }} 
+0

これは、ListViewコンポーネントを使用するたびにアイテムを割り当てる必要があるので、少し不便な場合は、有効な方法のようです。私は私が使い終わった方法を示すために私の答えを加えました。 – Prismatic

0

のような...

 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(); 
     } 
関連する問題