0

cocoa フレームワークを使用して Mac アプリケーションを作成しています。HTML コンテンツを読み込んだ Webview を追加しました。WebView は編集可能です。タグに HTML コンテンツを追加して画像を追加しました。今、私がする必要があるのは、画像のクリックを検出することですか? ユーザーが webview 内の画像をクリックすると、「画像名がクリックされました」というアラートを表示する必要があります。

誰でも、webviewでタグ情報とともに画像クリックを検出する方法を教えてください。

ありがとう、iPhoneDv

4

1 に答える 1

0

WebView がどのように機能するかを理解すれば、これはそれほど難しくありません。UIWebViewDelegate を実装します。そこにある機能の一つが

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType

ここで request.URL 内の URL を取得し、そこで f.ex を実行できます。それを解析し、スラッシュ (/) とその他の多くのオプションで分割し、リンクにあるパラメーターをチェックしてから、コード内でいくつかのメソッドをトリガーします。ただし、メソッドがリンク ページをレンダリングしないように、NO を返す必要があります。

この例では、すべての画像リンクがhttp://example.com/1.gifではなく、picture://example.com/1.gifであると想像します。

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
    NSURL *action = request.URL;
    if ([[action scheme] isEqualToString:@"picture"]) {
        // split url with /
        NSArray *array = [stringUrl componentsSeparatedByString:@"/"];
        NSLog(@"You just clicked on image : %@", [array lastObject]);
        return NO;
    }
 return YES;
}
于 2012-10-01T12:02:46.903 に答える