子类化 SKNode 时,Frame 属性 return 应该是一个非空值吗?

When subclassing SKNode, should the Frame property return a non-empty value?

我正在对 SKNode 进行子类化,以通过将这些节点添加到我的子类来呈现包含许多 SKSpriteNodes 的地图。

一切正常,但我注意到我的节点子类的 Frame 始终为 0。

我在文档中找不到任何相关信息,所以:我是否应该覆盖 Frame属性 和 return 一个正确的值?

框架属性是节点本身的框架,忽略任何子节点。对于 SKNode,这是一个位置,但宽度和高度为零。

The frame is non-empty if the node’s class draws content. (https://developer.apple.com/reference/spritekit/sknode)

我读作:SKNode 不绘制任何内容,因此它为空是正确的。

节点 其子节点的框架由方法 calculateAccumulatedFrame() 提供,需要子树框架的函数 应该 调用它而不引用框架 属性。

因此应该不需要为您的 SKNode 覆盖框架。我从来没有,在一些应用程序中有类似的结构 并且还没有遇到问题...