iOS WKWebView Peek and Pop на изображении - PullRequest
0 голосов
/ 17 сентября 2018

В последнее время я пытался заставить Peek And Pop работать с моим WKWebView. Вариант использования, для которого я его использую - это раздел комментариев RichText в моем приложении. Но поскольку в WebView уже сделано много настроек, я настроил минимальный воспроизводимый пример .

Пока я узнал следующее:

  1. Свойство позволяет LinkPreview WKWebView должно быть истинным, к которому оно по умолчанию относится.
  2. Вы должны реализовать пользовательский WKUIDelegate , в котором:
    • webView(_ webView: WKWebView, shouldPreviewElement... должен вернуть true, если вы хотите показать Peek and Pop.
    • webView(_ webView: WKWebView, previewingViewControllerForElement... должен вернуть контроллер вида для отображения pop и peek.
    • webView(_ webView: WKWebView, commitPreviewingViewController... как только просмотр и окончание будут завершены, вы должны перенести представление на контроллер навигации или представить его здесь модально.

Эффект, которого я пытаюсь достичь, отображается здесь .

Проблема: Что в настоящее время идет не так, так это то, что я возвращаю true из shouldPreviewElement, но тогда второй метод previewViewControllerForElement никогда не вызывается, как ожидалось. Я также посмотрел на другие реализации Pop и Peek (за пределами WKWebView, и они работают аналогично и не имеют этой проблемы).

...