didMove(查看:SKView)和didMoveToView(查看:SKView)有什么区别?

k13*_*ran 2 ios sprite-kit swift

在标题中,didMove(查看:SKView)和didMoveToView(查看:SKView)之间有什么区别?

我知道didMoveToView是方法,该视图是旧版(?)版本中的SKView类型.我不理解'查看:SKView'被传递给didMove方法的交易.是'到'和'查看'单独的变量?'到''是'didMove'的一部分吗?到底是怎么回事?

编辑:我知道他们都完成了同样的事情 - 但为什么在参数通常去的区域'到'?这有益处吗?这似乎是不必要的并发症?

Hon*_*ney 5

没有!

didMove(to view: SKView) 是Swift 3语法.

didMoveToView(view: SKView) 是Swift 2.x语法.

仅供参考,许多其他参数和方法命令从Swift 2更改为Swift 3. 这里可以找到非常好的更改列表

用法

这是有争议的,但对大多数人来说,Swift 3语法更具可读性,因为当你做didMove(to: xyzView)Swift 2.x语法时你的可读性较差didMoveToView(xyzView)


Ale*_*ano 5

区别仅在于语法.

新的Swift 3语法是didMove(to view: SKView)

在Swift中:

每个函数参数都有参数标签和参数名称.参数标签在调用函数时使用; 每个参数都在函数调用中写入,其前面带有参数标签.参数名称用于函数的实现.默认情况下,参数使用其参数名称作为其参数标签.

func someFunction(argumentLabel parameterName: Int) {
    // In the function body, parameterName refers to the argument value
    // for that parameter.
}
Run Code Online (Sandbox Code Playgroud)

所以,toswift 3版本只是参数标签.


可能你也看到了不需要插入parameterName的函数.

如果您不想要参数的参数标签,请为该参数编写下划线(_)而不是显式参数标签.

func someFunction(_ firstParameterName: Int, secondParameterName: Int) {
    // In the function body, firstParameterName and secondParameterName
    // refer to the argument values for the first and second parameters.
}
someFunction(1, secondParameterName: 2)
Run Code Online (Sandbox Code Playgroud)

希望有助于更好地理解这些修改:您可以在此处找到更多详细信息