Переполнение высоты содержимого в WebkitView - PullRequest
0 голосов
/ 04 февраля 2019

image

Это вид содержимого моего веб-просмотра, нижняя часть которого переполнена и не видна.Я понял, что родительское представление веб-просмотра охватывает весь экран, а дочернее представление охватывает весь экран, покидая область строки состояния приложения.Но оба они имеют одинаковые размеры, и именно поэтому мое дочернее представление переполняется вниз.

Я прочитал много решений, и большинство из них я пробовал, но никакой разницы не обнаружено.

HTML-файл, который я загружаю

<!doctype html>
<html lang="en">
<head>
  <meta name="viewport" content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, heigth=device-height, width=device-width">
  <meta name="format-detection" content="telephone=no">
  <meta name="msapplication-tap-highlight" content="no">
  <meta charset="utf-8">

  <title>XYZ</title>
  <base href=".">

  <!-- <meta name="viewport" content="width=device-width, initial-scale=1"> -->
  <link rel="icon" type="image/x-icon" href="favicon.ico">
</head>
<body>
  <root id="app-root"></root>
<script type="text/javascript" src="runtime.js"></script><script type="text/javascript" src="polyfills.js"></script><script type="text/javascript" src="styles.js"></script><script type="text/javascript" src="vendor.js"></script><script type="text/javascript" src="main.js"></script></body>
</html>

представление webkit

static func getWebKitView(uiController : ViewController, handlerName : String) -> WKWebView {
        let  controller = WKUserContentController()
        controller.add(uiController as! WKScriptMessageHandler, name: handlerName)

        let config = WKWebViewConfiguration()
        config.userContentController = controller

        let webKitView = WKWebView(frame: .init(x: 0.0, y: 0.0, width: DeviceInfo().getDeviceBounds().w, height: DeviceInfo().getDeviceBounds().h-2), configuration: config)
            webKitView.backgroundColor = UIColor.yellow
            webKitView.scrollView.isScrollEnabled = false
//            webKitView.frame.size = webKitView.scrollView.contentSize
        webKitView.scrollView.contentSize = webKitView.frame.size
            webKitView.allowsBackForwardNavigationGestures = true
        return webKitView
    }

Как я могу исправить эту проблему с пользовательским интерфейсом

1 Ответ

0 голосов
/ 06 февраля 2019

Дайте высоту для веб-представления View на 100 пунктов меньше, чем границы устройства

, а затем присвойте y позицию вашего дочернего представления как heightOfYourWebView + 10, чтобы кнопка находилась ниже WebkitView и над нижней частьюэкран также дает ширину 350 и высоту для кнопки 30, и вид не выходит за границы

...