Nativescript:获取 RadListView 项目的视图

Posted

技术标签:

【中文标题】Nativescript:获取 RadListView 项目的视图【英文标题】:Nativescript: getting view of RadListView item 【发布时间】:2019-02-09 14:23:07 【问题描述】:

我正在开发我的移动应用程序,并尝试使用 nativescript 对其进行编码, 但我有一个问题,我想在 listView 中为项目视图设置动画......

到目前为止,这是我的代码:

let page = args.object;
 const radList = page.getViewById('myList');
 const item = radList.getItemAtIndex(0);
 const itemView = radList.getViewForItem(item);

但我的 itemView 总是未定义,我也尝试使用 getChildAt() 方法但它不起作用...... 我不想用,itemDeleteAnimation 因为我想用我自己的动画

【问题讨论】:

这段代码在哪里? 它位于 listLoaded 方法中,列表加载时调用的方法 【参考方案1】:

我认为您遇到了时间问题,可以使用 setTimeout 解决。另一种可能性(如果适用)是使用 itemLoading 事件通过 ListViewEventData 获取对视图的引用

以下是两者的示例:

打字稿

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);

【讨论】:

以上是关于Nativescript:获取 RadListView 项目的视图的主要内容,如果未能解决你的问题,请参考以下文章

Nativescript-vue 获取有焦点的TextField

在 Nativescript 中获取 iOS 安全区域的宽度/高度

从 nativescript-vue 中的 textChange 事件获取名称

NativeScript Angular - 在点击事件时获取 X 和 Y

如何通过框架从 NativeScript 模式开启器获取上下文?

在 nativescript 中完成键盘后获取 TextField 文本属性