Iphone 获取UIWebView层次结构中的上一页

Iphone 获取UIWebView层次结构中的上一页,iphone,ios,objective-c,xcode,uiwebview,Iphone,Ios,Objective C,Xcode,Uiwebview,我需要能够找出UIWebView层次结构中的上一页是什么,以便在某些实例上禁用“后退”按钮。因此,澄清一下: User is on page A - clicks on link User is now on page B - clicks on link User is now on page C - clicks on the **back** button User is now on page B 我需要能够知道B页的“上一页”是A页。不幸的是,我现在使用的方法只能计算出用户

我需要能够找出UIWebView层次结构中的上一页是什么,以便在某些实例上禁用“后退”按钮。因此,澄清一下:

 User is on page A - clicks on link
 User is now on page B - clicks on link
 User is now on page C  - clicks on the **back** button
 User is now on page B
我需要能够知道B页的“上一页”是A页。不幸的是,我现在使用的方法只能计算出用户通常使用的上一页。因此,在上述情况下,它认为上一个导航页面是第C页


任何帮助都将不胜感激!:)

每次用户单击链接并加载新页面时,web视图代理都会收到一条消息。所以每次“写下”这些信息!现在你知道“回来”是什么意思了


此外,还可以将JavaScript与UIWebView对话。JavaScript为您提供一个
历史
对象。UIWebView中的许多关键功能都是通过JavaScript实现的!苹果没有费心在Objective-C属性中复制它,因为,为什么要费心呢?

每次用户单击链接并加载新页面时,您的web视图代理都会收到一条消息。所以每次“写下”这些信息!现在你知道“回来”是什么意思了

此外,还可以将JavaScript与UIWebView对话。JavaScript为您提供一个
历史
对象。UIWebView中的许多关键功能都是通过JavaScript实现的!苹果没有费心在Objective-C属性中复制它,因为,好吧,为什么要费心呢?

几年后

在研究同一个场景时,我提出了一个很好的解决方案。 在webViewDidFinishLoad中,检查属性“canGoBack”,并相应地隐藏或取消隐藏后退按钮。我觉得这太酷了,不能不分享。:)

几年后

在研究同一个场景时,我提出了一个很好的解决方案。 在webViewDidFinishLoad中,检查属性“canGoBack”,并相应地隐藏或取消隐藏后退按钮。我觉得这太酷了,不能不分享。:)


请显示您“现在正在使用”的内容。我在webviewDidFinishLoad上有这个:previousPage=[[webView.RequestURL]absoluteString];请显示您“现在正在使用”的内容。我在webviewDidFinishLoad上有这个:previousPage=[[webView.RequestURL]absoluteString];谢谢你的反馈,马特。我希望UIWebView能提供一种比自己跟踪事情更简单的方法。但我尝试了一下,它解决了这个问题。我也很高兴您提到了javascript解决方案,我将在将来记住这一点。谢谢谢谢你的反馈,马特。我希望UIWebView能提供一种比自己跟踪事情更简单的方法。但我尝试了一下,它解决了这个问题。我也很高兴您提到了javascript解决方案,我将在将来记住这一点。谢谢
if (self.webView.canGoBack)
{
    self.backButton.hidden = NO;
}
else
{
    self.backButton.hidden = YES;
}