2

我需要从对象中删除一个动作,然后添加一个新动作。

我已使用此代码添加新操作:

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

然后我尝试使用此代码删除旧操作:

[Button removeTarget:self action:@selector(oldAction:) forControlEvents:UIControlEventTouchUpInside];

问题是它也以某种方式删除了 newAction。

有任何想法吗?

提前致谢 :)

4

2 回答 2

5

在这种情况下,一个简单的解决方案是在添加新操作之前先删除旧操作。即反过来做。

nil您也可以通过传递目标来删除所有操作。

于 2011-09-09T00:00:40.830 回答
1

您可以从 UIButton 中删除操作,例如:

[self.myButton removeTarget:nil action:NULL forControlEvents:UIControlEventAllEvents];
于 2017-07-28T16:11:56.177 回答