UIWebView历史如果声明

时间:2011-09-14 20:16:46

标签: iphone objective-c ios uiwebview webkit

如何检测UIWebView中查看的最后一页?基本上我想说, if (在 if语句中)在UIWebView中查看的最后一页是@“http://www.example.com”和当前UIWebView页面是@“http://www.lalala.com”然后......和我的行动。

谢谢,

詹姆斯

1 个答案:

答案 0 :(得分:2)

在webview委托的webViewDidFinishLoad:中,获取上次加载页面的URL(通过检查webview的请求属性)并将其存储在某个属性中。然后在if语句中使用该属性。

编辑:添加一个属性(比如说给UIWebView委托类):

@property (nonatomic, retain) NSURL* lastLoadedURL;

然后添加此方法:

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
self.lastLoadedURL = [webView.request URL];
}

因此,无论何时您需要检查上次加载的页面,您都会执行以下操作:

if([[self.lastLoadedURL lastPathComponent] isEqualToString:@"somepage.html"]) {
//do stuff
}

或者如果您不在UIWebView委托类中,则需要将self.lastLoadedURL替换为(delegateClassInstance).lastLoadedURL。