2012-08-16 52 views
0

我正在構建一個基於jscript的Windows 8 Metro應用程序。此應用程序的主屏幕是滾動的「全景」視圖,其中有幾個列表視圖,顯示應用程序狀態的各個方面。在某些情況下,用戶將在頁面上選擇導航到另一頁面的內容(使用WinJS.Navigation.navigate方法)。使用scrollIntoView在WinJS Metro應用程序中定位ListViews

當用戶點擊另一頁上的後退箭頭時,它將返回到主屏幕上,我使用「scrollIntoView」來將屏幕定位到用戶在導航發生之前正在工作的部分。

不幸的是,這幾乎沒有導致正確定位視圖,它似乎是隨機的。頁面尚未完成構建,並且滾動值是根據某些快照中的狀態設置的。

現在問題:

有什麼要通過WinJS ListView對象通知他們完全呈現和佈局?或者這是頁面就緒功能的工作?

感謝您的任何見解!

回答

2

並排放置多個列表視圖不是一個好主意(TM)。我建議放置一個列表視圖,並將您的內容放在分組數據源中以獲取組。如果項目具有不同的模板,則可以使用自定義項目模板選擇器來動態選擇模板。

此外,爲確保列表視圖滾動到正確的位置,您需要使用indexOfFirstVisible來設置名稱暗示的項目。

+0

非常感謝您的回答。我懷疑答案是這樣的。 :( – 2012-08-17 14:18:03

相關問題