NodeController用于控制和反馈对应的NodeContainer上的节点的行为,需要与NodeContainer一起使用。下面,对其常用生命周期函数进行说明。有没有相关代码可以实现这个功能呢?
harmonyos
App广告有一种场景是列表流广告,即在应用的列表流中穿插展示广告条目,旨在将广告无缝融入用户的浏览体验中,使其看起来像是正常的内容(广告条目需要加标记区别展示),从而吸引用户的注意力并提高参与度,例如新闻列表中的广告条目、商品列表中的广告条目等。在 HarmonyOS 中,如何理解这个概念?
您需要先 登录 才能评论/回答
全部评论(1)
NodeController生命周期
NodeController用于控制和反馈对应的NodeContainer上的节点的行为,需要与NodeContainer一起使用。下面,对其常用生命周期函数进行说明。
- makeNode():必须要重写的方法,用于构建节点树、返回节点挂载在对应NodeContainer中。在对应NodeContainer创建绑定当前NodeController的时候调用、或者通过rebuild()方法调用刷新。
- aboutToResize():当controller对应的NodeContainer在Measure的时候进行回调,入参为节点的布局大小。
- aboutToAppear():当controller对应的NodeContainer在onAppear()的时候进行回调。
- aboutToDisappear():当controller对应的NodeContainer在onDisappear()的时候进行回调。
- onTouchEvent():当NodeController绑定的NodeContainer收到Touch事件时触发此回调。
-
export abstract class NodeController { abstract makeNode(uiContext: UIContext): FrameNode | null; aboutToResize?(size: Size): void; aboutToAppear?(): void; aboutToDisappear?(): void; abstract rebuild(): void; onTouchEvent?(event: TouchEvent): void; }列表流广告组件实践案例
场景描述
App广告有一种场景是列表流广告,即在应用的列表流中穿插展示广告条目,旨在将广告无缝融入用户的浏览体验中,使其看起来像是正常的内容(广告条目需要加标记区别展示),从而吸引用户的注意力并提高参与度,例如新闻列表中的广告条目、商品列表中的广告条目等。
这种广告的布局和内容在开发阶段不确定(可能是图文、视频等形式中的一种),其通常是在运行阶段,依赖服务器下发的数据进行逻辑映射后,再执行布局的构建、内容的加载显示。所以在实际的开发中,应用需要使用动态创建组件的能力去实现该列表流广告。
-

-
2026-06-28 00:04:18