我正在开发我的移动应用,并尝试使用nativescript对其进行编码, 但我有一个问题要在listView中为项目视图制作动画...
到目前为止,这是我的代码:
let page = args.object;
const radList = page.getViewById('myList');
const item = radList.getItemAtIndex(0);
const itemView = radList.getViewForItem(item);
但是我的itemView始终是未定义的,我也尝试了getChildAt()方法,但是它不起作用... 我不想使用itemDeleteAnimation,因为我想使用自己的动画
答案 0 :(得分:3)
我认为您遇到了计时问题,可以使用setTimeout
解决。另一种可能性(如果适用)是使用itemLoading
事件通过ListViewEventData获取对视图的引用
以下是两个示例:
TypeScript
export function onRadLoaded(args) {
const radList = <RadListView>args.object;
setTimeout(() => {
const item = radList.getItemAtIndex(0);
const view = radList.getViewForItem(item);
console.log(view);
}, 300);
}
export function onItemLoading(args: ListViewEventData) {
console.log("args.view: ", args.view);
console.log("args.data: ", args.data);
console.log("args.index: ", args.index);
}