次のコードで WebView を初期化します。
self.webView = [[UIWebView alloc] initWithFrame:self.view.bounds];
self.webView.delegate =self;
[self.view addSubview:self.webView];
[self.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com"]]];
その後、WebView に Web ページを読み込みます。たとえば、stackoverflow を検索します。
ボタンを押して goBack を呼び出すよりも
[self.webView goBack];
このデリゲート メソッドは、毎回呼び出されるわけではありません。
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
非常に高速に読み込まれるため、 goBack 関数はキャッシュからページを読み込むと思います。
iOS バージョン 6.1 で発生します。
デリゲートが常に呼び出されるように、誰かが私を助けることができますか?
更新: shouldStartLoadWithRequest:navigationType: delegate メソッドを使用して、履歴のバック URL を取得します。