Iphone 如何在自定义按钮单击时通过@selector传递数据?

Iphone 如何在自定义按钮单击时通过@selector传递数据?,iphone,objective-c,ios,ipad,selector,Iphone,Objective C,Ios,Ipad,Selector,我正在通过代码制作一个按钮。 我有下面一行代码在单击按钮时触发一个方法: [imagesButton addTarget:self action:@selector(photoClicked:) forControlEvents:UIControlEventTouchDown ]; 问题是我不能通过@selector将数据传递给方法; 如果按钮有一个背景图像名称“background.png”,那么在单击按钮时,我如何将背景图像的名称发送给该方法? 这一切都必须通过代码实现 谢谢 -碎纸机如果

我正在通过代码制作一个按钮。 我有下面一行代码在单击按钮时触发一个方法:

[imagesButton addTarget:self action:@selector(photoClicked:) forControlEvents:UIControlEventTouchDown ];
问题是我不能通过@selector将数据传递给方法; 如果按钮有一个背景图像名称“background.png”,那么在单击按钮时,我如何将背景图像的名称发送给该方法? 这一切都必须通过代码实现

谢谢


-碎纸机

如果您试图更改发送消息的按钮的属性,那么您的选择器应该有一个参数
sender
,该参数是指向调用它的对象的指针,在本例中是您的按钮。例如:

- (void)photoClicked:(id)sender {
    UIImage bg = [sender currentBackgroundImage]
}

一定有办法对答案进行评论,但我不知道答案是什么。无论如何,我上面的Gobot忘记在方法声明中在发送者之前写(id)。否则戈博特的例子就可以了