У меня есть UITableView, который при нажатии на ячейку отображается вид загрузки, в то время как UIWebView загружает его содержимое (файл mp3). Когда UIWebView начинает загружаться, он увеличивает свое модальное представление. Эта часть работает нормально - вид загрузки отображается до тех пор, пока модальный контроллер не поднимется вверх.
Проблема в том, что я не могу найти какой-либо метод для нажатия (веб-представление делегата, viewDidAppear и т. Д.), Чтобы определить, когда модальное представление закрылось, поэтому я могу удалить загрузочное представление при возврате в табличное представление. Пользователь по-прежнему видит представление загрузки, когда модальное представление закрывается.
Вещи, которые я пробовал:
1) Пытался использовать webViewDidFinishLoad, но он никогда не вызывается. (Не вызывается на mp3?)
2) Удаление представления загрузки на webViewDidStartLoad - проблема в том, что пользователь смотрит на белый экран, пока он продолжает загружаться, что довольно придирчиво, и я пытаюсь избежать этого.
3) Помещение UIWebView в его собственный UIViewController и установка альфа его представления в 0. (Идея состояла в том, чтобы не видеть белый вид и продолжать видеть экран загрузки, пока не появится модальный вид, тогда, возможно, поймать метод viewDidX.)
По сути, я хочу просмотр таблицы -> экран загрузки -> модальное представление веб-просмотра -> просмотр таблицы (экран загрузки отсутствует).
Единственное, о чем я могу подумать, - это создать невидимую кнопку поверх «готовой» кнопки модального вида и использовать ее, чтобы определить, когда веб-представление закрывается.
Мысли или предложения?
Спасибо
John