Swift 如何修复此无法识别的选择器发送到实例错误?

Swift 如何修复此无法识别的选择器发送到实例错误?,swift,function,button,swift3,Swift,Function,Button,Swift3,在过去的两个小时里,我一直在尝试修复一些本应该相当容易的东西。我的viewcontroller上有6个按钮,我想在点击它们时更改图像。如果再次点击,图像应变回原始图像(已选择/取消选择)。然而,我似乎无法理解,每当我使用下面的代码时,它就会崩溃并声明: CharacteristicsViewController按钮标记::无法识别的选择器发送到实例0x12dd07390 有人能给我解释一下,当点击按钮时,我如何改变按钮的图像吗 PS:在下面的代码中,我只连接了一个按钮来测试我是否能使它工作 您所

在过去的两个小时里,我一直在尝试修复一些本应该相当容易的东西。我的viewcontroller上有6个按钮,我想在点击它们时更改图像。如果再次点击,图像应变回原始图像(已选择/取消选择)。然而,我似乎无法理解,每当我使用下面的代码时,它就会崩溃并声明:

CharacteristicsViewController按钮标记::无法识别的选择器发送到实例0x12dd07390

有人能给我解释一下,当点击按钮时,我如何改变按钮的图像吗

PS:在下面的代码中,我只连接了一个按钮来测试我是否能使它工作


您所做的一切正常,选择器设置正确

错误是按钮找不到选择器在类中指示的方法,特别是
buttonTapped
方法

问题是方法嵌套在viewDidLoad中。把它移到外面,到教室里,它应该会工作的


尝试如下设置按钮目标:

button.addTarget(self, action: #selector(testFunc), for: .touchUpInside)

}

func buttonTapped()
{
    sender.isSelected = !sender.isSelected;
}

您所做的一切正常,选择器设置正确

错误是按钮找不到选择器在类中指示的方法,特别是
buttonTapped
方法

问题是方法嵌套在viewDidLoad中。把它移到外面,到教室里,它应该会工作的


尝试如下设置按钮目标:

button.addTarget(self, action: #selector(testFunc), for: .touchUpInside)

}

func buttonTapped()
{
    sender.isSelected = !sender.isSelected;
}

buttonTapped()函数嵌套在viewDidLoad()中。将其移出,错误将消失。@dfd我将buttonTapped()函数移到viewDidLoad()之外。错误仍然出现,应用程序不断崩溃。您的buttonTapped()函数嵌套在viewDidLoad()中。将其移出,错误将消失。@dfd我将buttonTapped()函数移到viewDidLoad()之外。错误仍然出现,应用程序一直崩溃。我将其移动到类中,但它一直崩溃?请有人帮助我,我被卡住了…为什么它通过如下设置按钮目标继续崩溃:button.addTarget(self,action:#selector(testFunc),for:.touchUpInside)func buttonTapped(){sender.isSelected=!sender.isSelected;}我会编辑答案以便更好地理解您先生是个天才谢谢!!!最后我可以继续了!我把它移到了课堂上,但它一直崩溃?请有人帮我解决我被卡住了…为什么它会一直崩溃,像这样设置按钮目标:button.addTarget(self,action:#selector(testFunc),for:.touchUpInside)func buttonTapped(){sender.isSelected=!sender.isSelected;}我会编辑答案以便更好地理解您先生是个天才谢谢!!!最后我可以继续了!