Mam moduł wewnątrz mojej aplikacji na iOS 7+, która jest UIWebView. Strona html ładuje javascript, który tworzy przyciski o niestandardowych kształtach (przy użyciu biblioteki Raphaeljs). Dzięki UIWebView ustawiam delegata na siebie. Metoda delegata webView: shouldStartLoadWithRequest: navigationType:
jest wywoływana za każdym razem, gdy naciśnięty jest jeden z moich przycisków niestandardowych. Żądania nie powinny być obsługiwane przez html, ale raczej przez kod iOS. Więc użyłem konwencji o żądaniach (przeczytaj gdzieś tutaj na stackoverflow) używając "inapp" jako schematu moich żądań. Następnie sprawdzam hosta i podejmuję odpowiednie działania.Metoda delegowania UIWebView shouldStartLoadWithRequest: odpowiednik w WKWebView?
Ten kod działa poprawnie na iOS 7. Ale widoki sieciowe są puste na iOS 8 (błąd?), Więc zdecydowałem się użyć WKWebView na urządzenia z systemem iOS 8. Widoki w sieci są teraz w porządku (i niesamowicie szybsze!), Ale moje przyciski nie działają.
Próbowałem użyć - (WKNaviation *)loadRequest:(NSURLRequest *)request
, ale nie zostało to wywołane.
Nie mogę znaleźć bezpośredniego odpowiednika metody delegowania UIWebView webView: shouldStartLoadWithRequest: navigationType:
. Jaki jest najlepszy sposób obsługi tych żądań za pomocą WKWebView?
Po pierwsze, przepraszam za opóźnienie. Przetestowałem twoje rozwiązanie dla jednego z moich linków i zadziałało. Dziękuję Ci! Zastosuję to rozwiązanie wszędzie teraz. Chociaż widzę zawartość sieci na symulatorze, ale nie widzę jej na moim urządzeniu. Na urządzeniu wciąż widzę pustą stronę. Każdy pomysł, dlaczego? – invalidArgument
@invalidArgument Czy ładujesz zawartość internetową z Internetu lub swojego pakietu? Ponieważ dowiedziałem się, że w serwisie WKWebView występuje niewielki problem z ładowaniem lokalnych treści: http://stackoverflow.com/questions/24882834/wkwebview-not-working-in-ios-8-beta-4 – SeanR
załadowany z mojego pakietu. Właśnie napisałem pytanie poświęcone pustej stronie: http://stackoverflow.com/q/26455432/873436. Ten link był bardzo pomocny, dzięki jeszcze raz. Doprowadziło to jednak do innego problemu. – invalidArgument