HarmonyOS ArkUI NodeAdapter绘制无法正常显示?

关于NodeAdapter的使用存在一些问题:

OnGetChildId方法会调用,但onCreateChild方法不会被调用,无法正常显示列表。

是否可以提供详细使用的Demo。

另外NodeAdapter是否只能和TypeNode.List绑定。

阅读 522
1 个回答

需要在beta3的ide中使用,OnGetChildId与onCreateChild均会在 节点首次加载或新节点滑入时回调用,

NodeAdapter可以与多种类型组件绑定,参考链接:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-arkui-framenode-V5\#typenode12

在官网原例子上修改:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-arkui-framenode-V5\#nodeadapter使用示例

//  部分代码:
class MyNodeAdapterController extends NodeController {
  rootNode: FrameNode | null = null;
  nodeAdapter: MyNodeAdapter | null = null;

  makeNode(uiContext: UIContext): FrameNode | null {
    this.rootNode = new FrameNode(uiContext);
    let listNode = typeNode.createNode(uiContext, "Column");   //  例如与Column绑定
    // let listNode = typeNode.createNode(uiContext, "Scroll");
    listNode.initialize().borderWidth(2).borderColor(Color.Black);
    this.rootNode.appendChild(listNode);
    this.nodeAdapter = new MyNodeAdapter(uiContext, 100);
    NodeAdapter.attachNodeAdapter(this.nodeAdapter, listNode);
    return this.rootNode;
  }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进