Ich versuche eine iOS App auf OSX zu portieren und es gibt eine Sache, die ich nicht bekomme. Die iOS-App verwendet UIWebView, genauer gesagt eine UIView, die das UIWebViewDelegate implementiert:
%Vor%und implementiert diese drei Methoden:
%Vor%Kann mir jemand einen Hinweis geben, wie ich das auf das normale OSX Framework portieren kann? Ich weiß, dass es das WebView gibt, aber es hat 4 Delegaten, so weit ich es herausfinden konnte, und keines von diesen hat delegierte Methoden, die wie jene 3 klingen.
Danke
Für die erste Option möchten Sie wahrscheinlich eine WebPolicyDelegate . Und für die beiden anderen gibt es entsprechende Methoden in WebFrameLoadDelegate :
%Vor% In Bezug auf das iOS UIWebView
webView:shouldStartLoadWithRequest:navigationType:
, um dies mit dem OSX WebView
:
Legen Sie den WebPolicyDelegate-Delegierten fest für Ihre WebView-Instanz:
%Vor% Implementieren Sie dann die Methode – webView:decidePolicyForNavigationAction:request:frame:decisionListener:
in Ihrem Delegaten:
- (void) webView: (WebView *) webView decidePolicyForNavigationAction: (NSDictionary *) actionInformation Anfrage: (NSURLRequest *) Anfrage Rahmen: (WebFrame *) Rahmen decisionListener: (ID & lt; WebPolicyDecisionListener & gt;) Listener
Ich benutze dies anstelle von shouldStartLoadWithRequest, das funktioniert gut