docs для respondsToSelector
гласит следующее:
Вы не можете проверить, наследует ли объект метод от своего суперкласса, отправив responsedsToSelector: объекту, используя суперключевое слово.[..] Следовательно, отправка responsedsToSelector: to super эквивалентна отправке его себе. Вместо этого вы должны вызывать метод класса NSObject instancesRespondToSelector: непосредственно в суперклассе объекта
Кажется, это может быть причиной вашей проблемы с рекурсией.Я не знаю, связаны ли вещи делегатов.Просто предположение, хотя.