我需要从对象中删除一个动作然后再添加一个动作。
我已使用此代码添加新操作:
[Button addTarget:self action:@selector(newAction:) forControlEvents:UIControlEventTouchUpInside];
然后我尝试使用此代码删除旧操作:
[Button removeTarget:self action:@selector(oldAction:) forControlEvents:UIControlEventTouchUpInside];
问题在于它以某种方式也删除了newAction。
有什么想法吗?
提前致谢:)
答案 0 :(得分:5)
在这种情况下,一个简单的解决方案是在添加新操作之前先删除旧操作。也就是说反过来。
您也可以通过nil
传递目标来删除所有操作。
答案 1 :(得分:1)
您可以从UIButton中移除操作,例如:
[self.myButton removeTarget:nil action:NULL forControlEvents:UIControlEventAllEvents];