2016-11-15 5 views
0

Ich habe eine grundlegende WebView laden und externe Webseite.MacOS/OSX Webview nicht externe Links öffnen

Externe Links werden nicht geladen/nichts tun, wenn geklickt wird (in der Webansicht wird erwartet). Interne Links Last erwartet als

Welche Box habe ich nicht angekreuzt/erlaubt/verpasst?

Antwort

1

Sie müssen diese beiden Methoden (eine von WebPolicyDelegate und die andere von WebUIDelegate) definieren, um jede Seite aus jeder Domäne zu öffnen, einschließlich derer, die in verschiedenen Registerkarten oder Fenstern geöffnet werden sollen (es wird jedoch im selben WebView geöffnet) .

In meinem Fall habe ich eine WebView Unterklasse (VMWebView) erstellt, die für mich zu handhaben:

@implementation VMWebView 

-(void)awakeFromNib 
{ 
    self.UIDelegate = self; 
    self.policyDelegate = self; 
} 

-(void)webView:(WebView *)webView decidePolicyForNavigationAction:(NSDictionary *)actionInformation request:(NSURLRequest *)request 
     frame:(WebFrame *)frame decisionListener:(id<WebPolicyDecisionListener>)listener 
{ 
    // Opens everything 
    [listener use]; 
} 

-(WebView *)webView:(WebView *)sender createWebViewWithRequest:(NSURLRequest *)request 
{ 
    // Opens new tab/window pages 
    return sender; 
} 

@end 

Überprüfen Sie, ob das für Sie arbeitet.

+0

Schön, danke dafür – JSA986

Verwandte Themen