【问题标题】:UIWebView History If StatementUIWebView 历史 If 语句
【发布时间】:2011-09-14 20:16:46
【问题描述】:

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

谢谢,

詹姆斯

【问题讨论】:

    标签: iphone objective-c ios uiwebview webkit


    【解决方案1】:

    在 webview 委托的 webViewDidFinishLoad: 中,获取最后加载页面的 url(通过检查 webview 的 request 属性)并将其存储在某个属性中。然后在 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。

    【讨论】:

    • 抱歉,您介意提供一些示例代码吗,因为我不太确定如何执行所有这些操作:S
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-29
    • 2011-09-04
    • 1970-01-01
    • 2016-07-07
    相关资源
    最近更新 更多