2012-08-16 51 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

相关问题