Xcode: Как удалить действие из объекта?


Мне нужно удалить действие из объекта, а затем добавить новое.

Я использовал этот код для добавления нового действия:

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

Затем я попытался использовать этот код для удаления старого действия:

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

Проблема в том, что он каким-то образом также удаляет новое действие.

Есть идеи?

Заранее спасибо:)

2 2

2 ответа:

В этом случае простое решение состоит в том, чтобы сначала удалить старое действие, а затем добавить новое. то есть сделать все наоборот.

Вы можете удалить все действия, передав nil и для target.

Вы можете удалить действие из UIButton, например, следующим образом:

[self.myButton removeTarget:nil action:NULL forControlEvents:UIControlEventAllEvents];