Я хотел бы знать наверняка, когда загрузка страницы завершена в UIWebView
. Я знаю о подходе «refcounting» между didStartLoad
/didFinishLoad
outlined in here, и это работает для меня, но я не очень уверен в этом. Он вырос немного волосатый ifs
и все еще действует странно, когда Javascript решает поговорить с document.location
. Я неясно, а именно о следующем:Наблюдаемая нагрузка на страницу IOS UIWebView
UIWebViewDelegate
для всей силы он должен обрабатывать, очень лаконична и имеет next to none documentation. Может ли кто-нибудь подтвердить, чтоdidStartLoad
/didFinishLoad
действительно вызывается только для «кадров», что означает, скорее всего, «frameset/frame» и «iframe»?- Как я могу отличить вышеуказанные нагрузки, вызванные DOM, от перенаправления запросов (которые также создают события)?
- Мое наблюдение заключается в том, что каждому
didStartLoad
предшествуетshouldStartLoadWithRequest
, за исключением перенаправления. Это надежное поведение? - Я что-то пропустил, или нет способа узнать, какой запрос вызвал конкретный
didStartLoad
? Потому что[[webView request] URL]
единственного заданного контекста всегда возвращает тот же URL-адрес, который был предварительно запрошен UIWebView.