goBack
メソッドを壊さずに、自分のUIWebView
にカスタムHTMLを読み込めません。私は私のUIWebView
のURLリクエストを傍受していUIWebViewでNSURLRequestsを傍受できますか?
をどのような作品
はので、私は、カスタムHTMLを読み込むことができます。私はすべてのHTMLを制御しているので、特別なアプリケーションリクエストではwebView:shouldStartLoadWithRequest:navigationType:
で解析できるカスタムスキーム(つまり、myapp://arg1/?arg2=val
)を使用しています。私は実際にロードするHTMLを決めて、loadHTMLString:baseURL
と呼び出して、元の要求を取り消すためにNO
を返します。偉大
上記の作品を動作しない何
。問題は、UIWebView's
goBack
メソッドを使用したいとし、loadRequest:
は、その履歴スタックに追加する唯一のUIWebView
メソッドであるようです。
私はいくつかのアイデアを持っていますが、どちらが実現可能で、どのように動くかはわかりません。主なことは、YES
をwebView:shouldStartLoadWithRequest:navigationType
に返さなければならないと思われ、私はUIWebView
のloadRequest
メソッドを使用しなければなりません。
アイデア1:修正NSURLRequest /応答:それは実際にHTTPリクエストを作成し、その中に私のHTMLとNSURLResponseを返していません(のUIWebViewが要求を出したときに)なるように 私はNSURLRequestをサブクラス化することはできますか?または、NSURLResponseにカテゴリメソッドを何とか変更したり、サブクラス化したり、追加したりできますか?私はそれが本当の要求であるという考えが好きですが、プライベートAPIとApp Storeからの拒否に懸念しています。
アイデア2:カスタムURLプロトコルを処理 カスタムURLプロトコルを登録しますので、私のアプリは、それに応答し、私はそれが正当なNSURLResponse返すことができます
アイデア3(私のカスタムHTMLでいっぱいに。) :キャッシュを騙すこのキャッシュポリシーNSURLRequestReturnCacheDataDontLoad
でリクエストを作成し、何とかWebViewとキャッシュの間にHTMLを挿入しますか?
私は間違ったトラックにいるかもしれませんか?
来ましたか?もしそうなら、それは何でしたか? –
私の新しい答えを見てください。 – zekel