1

アプリで Webkit WebView を使用していますが、実際には機能しません。ページが読み込まれるということですが、ページ上のリンクをクリックしても何も起こりません。

これは私のウェブページです: http://www.beginninghtml.altervista.org

そして、これは私のコードです:

私の中でAppDelegate.h

@property (assign) IBOutlet WebView *webView;

私の中でAppDelegate.m

-(void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
     NSURL *url = [[NSURL alloc] initWithString:@"http://www.beginninghtml.altervista.org"];
     NSURLRequest *req = [[NSURLRequest alloc] initWithURL:url];
    [[_webView mainFrame] loadRequest:req];
}

ページは正しく読み込まれますが、ページ上のリンクをクリックしても何も起こりません。誰でも私を助けることができますか?

4

2 に答える 2

2

リンクの中に、通常どおり現在のウィンドウでページを開くのではなく、新しいウィンドウを開くよう要求しているものがあることに気付きました。New Window Requestsを処理するのはあなた次第です。私がリンクしたセクションでは、Web ビューの UI デリゲートとしてリクエストを処理せずにそのようなリンクをクリックした場合、「何も起こらない」と具体的に述べています。

于 2013-03-23T17:24:05.107 に答える
1

最後に、次のコードを使用して、新しいウィンドウを開く必要があるリンクを Cocoa Webview で開きました。

WebView の policyDelegate を設定し、次のコードを実装します。

-(void)webView:(WebView *)webView decidePolicyForNewWindowAction:(NSDictionary *)actionInformation request:(NSURLRequest *)request newFrameName:(NSString *)frameName decisionListener:(id<WebPolicyDecisionListener>)listener
{
    [listener ignore];
    NSURLRequest *req = [[NSURLRequest alloc] initWithURL:[request URL]];
    [[_webView mainFrame] loadRequest:req];
}
于 2013-03-25T13:35:05.173 に答える