OStack程序员社区-中国程序员成长平台

标题: ios - @"//"在 childWithName 中做了什么以及何时使用它 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 11:05
标题: ios - @"//"在 childWithName 中做了什么以及何时使用它

我正在开发一个 SpriteKit 项目,我的 SKSpriteNode 有一个简单的名称:

node.name = @"cat"

但是,当我尝试执行 [self childWithName"cat"] 时,我没有检索到我的对象。通过一些研究,我注意到有些人提到我应该这样做

[self childWithName"//cat"] 

这行得通。我想知道“//”有什么作用?



Best Answer-推荐答案


它不会对所有 NSString 做特殊的事情,只是用于搜索节点树的字符串,它会递归搜索 self 的所有子节点。

来自文档:

When placed at the start of the search string, this [//] specifies that the search should begin at the root node and be performed recursively across the entire node tree. It is not legal anywhere else in the search string.

例如,假设你有这个节点树:

                 scene
              /         \
             /           \
        child1              child2
       /      \              /     \
      /        \            /        \
grandchild1  grandchild2 grandchild3  grandchild4 

没有 //childNodeWithName: 只会找到 child1child2。使用 //,它会找到 child1, child2, grandchild1, grandchild2, grandchild3grandchild4.

关于ios - @"//"在 childWithName 中做了什么以及何时使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30926691/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4