0

Xcode に webView があり、数秒ブラウジングした後、Web ビューの現在の URL を取得したいと考えています。いろいろ調べたのですが方法がわかりません。どんな助けでも大歓迎です!

4

1 に答える 1

2

WebViewのアウトレットを nib ファイルの AppleScript クラスに設定すると、のメソッドにframeLoadDelegate相当する AppleScript-Objc を実装して、が新しいページのロードを開始したときに通知を受けることができます (これはWebKit Objective-C Programming Guideから来ています)。ページの読み込み - 現在の URL の表示):WebFrameLoadDelegatewebView:didStartProvisionalLoadForFrame:WebView

on webView_didStartProvisionalLoadForFrame_(sender, frame)
    log "webView_didStartProvisionalLoadForFrame_"

    if frame is equal to sender's mainFrame then
        set currentURLRequest to frame's provisionalDataSource()'s request
        log currentURLRequest

        set theURL to currentURLRequest's mainDocumentURL()
        log theURL

        set theURLString to theURL's absoluteString()
        log theURLString

        set textField's stringValue to theURLString

    end if

end webView_didStartProvisionalLoadForFrame_

このサンプル コードでは、別のページに移動するときにブラウザーが通常行うように、テキスト フィールドの文字列値を現在の URL に設定します。必要に応じて、この値をいつでも AppleScript に格納できpropertyます。

サンプル プロジェクト: WebViewFinaglerAS-Objc.zip

于 2013-03-14T02:58:33.020 に答える