¿Cómo cancelar el toque del botón si UIGestureRecognizer se dispara?

Update: el problema parece ser la dependencia de otro GestureRecognizer para fallar. ¡Vea los comentarios y el proyecto de prueba debajo de esta pregunta!

En mi aplicación para iPhone, tengo una vista con múltiples UIButtons como subvistas. La vista también tiene un UITapGestureRecognizer que está escuchando toques con dos dedos.

Cuando se produce un toque con dos dedos en la vista, no quiero que los botones reaccionen al toque, incluso si uno de los dedos estaba dentro del botón. Pensé que para eso es "cancelsTouchesInView", pero eso no funciona.

Mi pregunta ahora es: ¿Cómo decirle a mis botones que ignoren los toques cuando se reconoce un gesto?

Edit: Este es mi reconocedor de gestos.

UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doubleTapped:)];
[doubleTap setNumberOfTouchesRequired:2];
[doubleTap setNumberOfTapsRequired:1];
[doubleTap setCancelsTouchesInView:YES];
[doubleTap setDelaysTouchesBegan:YES];
[doubleTap setDelaysTouchesEnded:YES];
[self.view addGestureRecognizer:doubleTap];
[doubleTap release];

Respuestas a la pregunta(4)

Su respuesta a la pregunta