Мне нужно было что-то делать после отклонения модального вида и только тогда, когда он уверен, что модальное представление действительно исчезло (полностью освобождено). Поэтому viewDidDisappear и его друзья в модальном представлении были для меня слишком ранними.
Самым простым, что я нашел, было просто отложить мой код с помощью NSTimer. Когда модальное представление вызывает своего делегата, и делегат вызывает удаление модального представления, оно также ставит в очередь код, который будет запущен, когда модальное представление исчезнет. Время было примерно 300 или 400 мс. (Есть ли способ получить фактическое время где-то?)