Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何替换(n?)UIButton的现有操作?_Iphone_Uibutton - Fatal编程技术网

Iphone 如何替换(n?)UIButton的现有操作?

Iphone 如何替换(n?)UIButton的现有操作?,iphone,uibutton,Iphone,Uibutton,到目前为止,我一直在使用 [button1 addTarget:self action:@selector(newAction) forControlEvents:UIControlEventTouchUpInside]; 这增加了一个额外的动作(我想)。如何用新操作替换初始操作?您可以删除以下特定操作的目标: [button1 removeTarget: self action: @selector(oldAction) forControlEvents: UIControlEventTou

到目前为止,我一直在使用

[button1 addTarget:self action:@selector(newAction) forControlEvents:UIControlEventTouchUpInside];

这增加了一个额外的动作(我想)。如何用新操作替换初始操作?

您可以删除以下特定操作的目标:

[button1 removeTarget: self action: @selector(oldAction) forControlEvents: UIControlEventTouchUpInside]
[button1 removeTarget: nil action: NULL forControlEvents: UIControlEventAllEvents]
或者,更好的是,您可以像这样从按钮中删除所有目标:

[button1 removeTarget: self action: @selector(oldAction) forControlEvents: UIControlEventTouchUpInside]
[button1 removeTarget: nil action: NULL forControlEvents: UIControlEventAllEvents]
然后,您可以添加新的目标操作:

[button1 addTarget:self action:@selector(newAction) forControlEvents: UIControlEventTouchUpInside];
差不多就是这样

希望这有帮助,
Pawel

首先必须使用removeTarget:action:forControlEvents:删除当前操作,然后使用addTarget:action:forControlEvents:添加新操作。

我认为可以接受UIButton,是的。要删除所有以前的操作:
[button1 removeTarget:nil action:NULL forControlEvents:uicontrolEvents]
-请参阅