Warum zeigt WKWebView keine Videos an? - Schnell 3

A. Munzer

Ich habe erfolgreich ein WKWebViewprogrammgesteuertes In a viewController(in viewDidLoad()) hinzugefügt . Wenn ich eine URL lade, die ein Video enthält, sieht es gut aus, aber wenn ich versuche, darauf zu tippen (es abzuspielen), kann ich es nicht sehen, aber das Audio funktioniert gut.

Das Seltsame ist, dass ich ein neues Projekt erstellt habe, um sicherzustellen, dass es einwandfrei funktioniert. Außerdem habe ich genau den Code kopiert, mit dem webView das Video angezeigt hat.

Es hat gut funktioniert, bevor es zu Swift 3 konvertiert wurde.

So sieht es aus, wenn Sie auf das Video tippen:

Vor dem Tippen:

Geben Sie hier die Bildbeschreibung ein

Nach dem Tippen:

Geben Sie hier die Bildbeschreibung ein

Ich habe auch eine andere Webseite ausprobiert:

Vor dem Tippen:

Geben Sie hier die Bildbeschreibung ein

Nach dem Tippen (Beachten Sie, dass die Statusleiste jetzt ausgeblendet ist):

Geben Sie hier die Bildbeschreibung ein

Dies ist einfach der Code:

override func viewDidLoad() {
    super.viewDidLoad()

    let web = WKWebView(frame: view.frame)
    let urlRequest = URLRequest(url: URL(string: "http://www.w3schools.com/html/html5_video.asp")!)       
    web.frame = view.frame
    web.load(urlRequest)

    view.addSubview(web)
 }

Ich habe versucht, viele Fälle ohne Ausgabe zu überprüfen. Was vermisse ich?

Danke im Voraus.

xfdai

Ich denke, das Video wird hinter Ihrem WKWebview abgespielt. Könnten Sie bitte die Ansichtshierarchie debuggen und veröffentlichen? Xcode->Menu->Debug->View Debugging->Capture View Hierarchybeim Abspielen des Videos.

Ich habe es mit einem neuen swift3-Projekt versucht und mit Ihrem Code gibt es kein Problem, hier ist die Ansichtshierarchie:

Geben Sie hier die Bildbeschreibung ein

Sie können sehen, dass sich AVPlayerView im linken Bereich in einem anderen UIWindow befindet, das sich von WKWebView unterscheidet. Ich denke, das UIWindow, das das WKWebView in Ihrem Projekt enthält, hat eine höhere Fensterebene, sodass es über dem UIWindow angezeigt wird, das AVPlayer enthält.

Und indem ich das Standard-UIWindow zu einem höheren WindowLevel (UIWindowLevelAlert) gemacht habe, habe ich reproduziert, was Sie in Ihrem Projekt gesehen haben.

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.
    window?.windowLevel = UIWindowLevelAlert
    return true
}

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

Warum zeigt UIPickerView keine Zeilen an? schnell

WKWebView zeigt keine Navigationsleiste an

Chrome zeigt keine Videos an

tableView Zelle zeigt keine Daten an, was ist das Problem? (schnell 3)

Warum zeigt Objective-C keine Ausgabebilder eines von OpenCV aufgenommenen Videos an?

CustomCell zeigt keine zwei Nachrichten schnell an

Warum zeigt dieses Programm keine Zahl über 3 an?

Warum zeigt es keine Einzelgruppenfunktion?

Warum zeigt GoDoc keine Schnittstellenvariablen an?

Warum zeigt GCC keine Vektorisierungsinformationen an?

Warum zeigt RMarkdown keine Codeausgabe an?

Warum zeigt Javascript keine Ergebnisse an?

Warum zeigt CSS keine!wichtig an?

Warum zeigt setw keine Leerzeichen an?

WKWebView zeigt die Website mit iOS 9.0 nicht schnell an

schnell, warum diese Bildlaufansicht keine Unteransicht anzeigt?

Swift 3 beim Parsen von YouTube-Videos zeigt keine Ergebnisse und wird weiter geladen - IOS 10

Warum zeigt Listview keine Werte aus DataTable an?

Warum zeigt Picasso keine vollständigen Bilder an?

Warum zeigt dieses visNetwork in R keine Kante?

Warum zeigt CPP Check keine FEHLER an?

Warum zeigt Javascript hier keine Warnung an?

Warum zeigt dynamisches Debuggen in Linux keine Variablenwerte an?

Warum zeigt meine Figur keine aktualisierten Diagramme?

Warum zeigt Go keine Neuordnung des Speichers?

Warum zeigt benutzerdefiniertes FrameworkElement keine Kinder an?

Warum zeigt Shell_NotifyIcon keine Sprechblasenbenachrichtigung an?

Warum zeigt meine Strategie keine Daten an?

Warum zeigt mein Argparse keine Standardwerte an?

TOP Liste

heißlabel

Archiv