简单的问题,但我没有找到可能的解决方案:
我在Sencha Touch中有一个列表,其中包含通过itemTpl
属性生成的项目。
现在我想在DOM中查看项目(在它们被渲染之后!)并替换它们的图像(使用imgCache进行图像的设备上缓存)
List的Painted
事件无效,因为它在渲染Item-DOM之前被触发。
编辑:
我目前的解决方案是覆盖updateListItem
的内部Ext.dataview.List
方法,在那里调用原始updateListItem
并添加我的附加功能。仍在寻找更好的解决方案......
答案 0 :(得分:1)
列表相关商店的load
事件是您正在寻找的。 p>
[编辑]
正如您在评论中指出的那样,在实际呈现项目后,不保证会抛出load
事件。
我认为您的方法是正确的,但是为什么不在重写方法结束时触发自定义事件,而不是添加您的功能,传递列表项本身,以便您可以监听该事件在名单上?
类似的东西:
updateListItem: function(item, index, info) {
// function body ...
me.fireEvent('listitemupdate', [item, index]);
}
这应该让你的代码更加干净和可重复使用。