WKWebView не изменяет размер при изменении контента

WKWebView не изменяется при изменении содержимого.

Вот фрагмент кода:

@IBOutlet weak var containingView: UIView! var webView: WKWebView! override func viewDidLoad() { super.viewDidLoad() let contentController = WKUserContentController(); self.webView = WKWebView(frame: CGRectMake(0, 0, self.view.frame.width, self.view.frame.height), configuration: WKWebViewConfiguration()) self.webView.autoresizingMask = [.FlexibleHeight] self.webView.loadHTMLString(__, baseURL: __)) self.webView.scrollView.bounces = false self.webView.scrollView.scrollEnabled = false self.containingView.addSubview(self.webView) } 

Какую функциональность следует добавить, чтобы я мог перехватить размер контента, который был изменен, и соответственно изменить размер содержания?

То, что остановило меня, было небольшая начальная высота WKWebView

 webView = WKWebView(frame: CGRectMake(0, 0, self.view.frame.width, 150), configuration: configuration) 

вместо

 webView = WKWebView(frame: CGRectMake(0, 0, self.view.frame.width, self.view.frame.height), configuration: configuration) 

Концептуально в объективе c вы должны сделать, как показано ниже.

Две вещи: убедитесь, что у вас есть эти свойства:

 self.webView.scalesPageToFit = YES; self.webView.contentMode = UIViewContentModeScaleAspectFit; 

И, наконец, вычислите высоту содержимого webView как: – webView.isLoading является одним из наиболее важных свойств. Фактически в одном вызове веб-url он называется несколько раз.

 - (void)webViewDidFinishLoad:(UIWebView *)webView{ if (webView.isLoading == NO)// as it is called multiple times so wait untill last call { CGFloat height = [[webView stringByEvaluatingJavaScriptFromString:@"document.height"] floatValue]; } } 

Так вы должны вычислить высоту веб-представления.

вы можете посмотреть здесь, поскольку WKWebView не имеет удаления, которое вы можете использовать для получения размера содержимого вместо KVO:

Пример KVO Может быть, это поможет вам больше!

  • при перенаправлении с кодом 302 WKWebView не может установить cookie
  • Почему я не могу сохранить WKWebView в ?
  • WKWebView не загружает http-образ в iOS 10 и выше
  • Установить useragent в WKWebview
  • Утечка памяти в WkWebView
  • Как предотвратить закрытие WKWebView при запуске плагина Cordova
  • Как очистить WKBackForwardList от WKWebView?
  • Как я могу исправить нарушенные функции, вызванные запрещенным useragent?
  • В чем разница между UIWebView и WKWebView при загрузке локальных ресурсов
  • WKProcessPool можно хранить на постоянной основе с помощью NSUserDefaults или что-то еще?
  • WKWebView внутри UIScrollView: прокручивание конфликта
  • Interesting Posts

    Какие проблемы могут привести к отключению владельца файла nib?

    Как синхронизировать с NSUserDefaults в Settings.bundle?

    Вход в Facebook с Firebase. Не удается найти URI перенаправления URI

    Сравните весь элемент в одном массиве с другим массивом

    Отмена интерактивного жестов по умолчанию UINavigationController не вызывает методы UINavigationControllerDelegate

    Как работает CLVisit?

    Почему UIActionSheet прозрачен при представлении?

    UITextField Должен принимать значения только для числа

    Анимация элементов взглядов, которые переходят на

    Поддержка только iPhone при отправке в Apple

    Проблема iOS Cocoapods: нет такого модуля в некоторых частях моего проекта (пользовательская папка и цель Apple Watch)

    значение «Приложение не работает в фоновом режиме»

    Как получить изображение для запуска пейзажа, которое будет отображаться при запуске?

    watchOS Ошибка: неизвестное свойство в описании интерфейса для контроллера

    Панель состояния iOS 7 соприкасается с NavigationBar

    Давайте будем гением компьютера.