Ios 为什么UIButton.addTarget需要一个“:&引用;在表示操作的字符串之后?

Ios 为什么UIButton.addTarget需要一个“:&引用;在表示操作的字符串之后?,ios,iphone,cocoa-touch,swift,uikit,Ios,Iphone,Cocoa Touch,Swift,Uikit,我有以下代码: button.addTarget(self,action:“buttonIsPressed:”,forControlEvents:。触地) 为什么我需要在字符串后面加“:”来执行操作?它来自Objective-C。基本上它意味着操作方法需要一个参数。在您的情况下,传递的参数将是发送方(即生成要调用的操作的ui按钮。它来自Objective-C。基本上,它意味着操作方法采用一个参数。在您的情况下,传递的参数将是发送方(即生成要调用的操作的ui按钮。,因为您的函数buttonIsPr

我有以下代码:

button.addTarget(self,action:“buttonIsPressed:”,forControlEvents:。触地)


为什么我需要在字符串后面加“:”来执行操作?

它来自Objective-C。基本上它意味着操作方法需要一个参数。在您的情况下,传递的参数将是
发送方
(即生成要调用的操作的
ui按钮

它来自Objective-C。基本上,它意味着操作方法采用一个参数。在您的情况下,传递的参数将是
发送方
(即生成要调用的操作的
ui按钮

,因为您的函数buttonIsPressed有一个参数。
一:等于一个参数

,因为您按下的函数按钮有一个参数。
一:等于一个参数,你不需要它。但是你必须有一个不带参数的函数

func buttonIsPressed(){
    println("button pressed")
}

你不需要它,但是你必须有一个不带参数的函数

func buttonIsPressed(){
    println("button pressed")
}

谢谢你的回答。在为苹果开发时,这是某种操作系统模式吗?我能在其他情况下找到这种模式吗?这里你只是在使用普通的oop目标操作模式。
只是Objective-C消息传递语法的一个遗产。UIKit是一个全Objective-C框架。你可以看看Obje的基本介绍ctive-C(类似于hello world教程)看看你传递的是什么样的语法。谢谢Matteo,我会在互联网上寻找更多的基础知识。谢谢你的回答。这是为苹果开发的某种操作系统模式吗?我能在其他情况下找到这种模式吗?这里你只使用了普通的oop目标操作模式。
只是Objective-C消息传递的一个遗留版本syntax.UIKit是一个全Objective-C框架。你只需看一看Objective-C的基本介绍(类似于hello world教程),就知道你在传递什么样的语法。谢谢Matteo,我将在internet上寻找更多的基础知识。