WinJS.UI.ListView mediaTile

时间:2014-11-04 16:18:45

标签: winjs xbox-one

我们目前正在开发一个共享相同代码库的Xbox One和Windows 8.1应用程序,而且我遇到了WinJS中listView项目中'pointerover'(或悬停状态)的问题.UI.ListView。

listview项有一个eventListener,指针转移。但是,这似乎只适用于WinJS.UI.ListView中的前10个项目,虽然我在屏幕上看到了16个项目,WinJS.UI.ListView给了我:

indexOfFirstVisible = 0
indexOfLastVisible = 15

我的listItem有的eventListener是:

mediaTile.element.addEventListener("pointerover", function (that) {
   that._allItemsListView.currentItem = { hasFocus: true, index: this.tileIndex };
}.bind(mediaTile, this));

当我添加一个断点时,虽然屏幕上有16个项目,但它只有前10个项目才会被点击。

有谁知道我在这里缺少什么?

提前致谢!

2 个答案:

答案 0 :(得分:0)

我的猜测是你被ListView可视化所困扰。绑定事件监听器时,可能还存在高于10的磁贴,但它们在屏幕上显示得足够快,以至于不是很明显。

我不够专业,无法就此提出具体建议。从概念上讲,您可以在将新项目添加到列表中时(在列表本身上)监听事件,然后将指针切换事件添加到新项目中。

答案 1 :(得分:0)

是的,从远处看它时似乎就是这种情况;另一位开发人员接手了,我们也从WinJS 1.0迁移到WinJS 2.0,这似乎解决了很多这些问题。

直到今天,我还不确定究竟是什么问题;我们还使用了数据源的获取限制,这似乎也解决了这个问题。

对不起,我的回答能更彻底;我不得不问开发人员(如果他还记得)问题是什么,但是主要的改进是转向WinJS 2.0。