2012-03-03 191 views
0

我正在研究从RSS源获取新闻的通用iOS应用程序。新闻Feed的主体是HTML,因此我将它显示在UIWebView中。当用户点击一个链接时,我会说明他们可以从原始新闻和他们在该新闻文章中点击的链接来回导航。iOS清除UIWebView的历史记录

在iPhone上,当用户退出个别新闻文章的ViewController并选择不同的新闻文章时,UIWebView创建新鲜并完美工作。但在我的iPad版本中,我使用的是UISplitViewController,当用户单击左侧的不同新闻文章时,右侧会更新,但UIWebView并非新鲜创建。

我的问题是,UIWebView保留了其他链接的用户可能在不同的新闻文章中点击过的历史记录。

下面是在iPad版本

- 用户点击第一新闻文章 --User点击这篇文章中的链接会发生什么流。 WebView转到链接。 - 用户点击返回。 WebView转到新闻文章 的原始内容 - 用户点击不同的新闻文章。 - 用户点击本文中的链接。 WebView转到链接。 - 用户点击返回。 WebView中去链接被点击的第一个新闻文章 --User则必须再次单击后退去这个新闻文章的原始内容

我想有一个UIWebView开始作为一个“清白”时,新的新闻文章被选中。

回答

4

您可以在最坏的情况下简单地创建一个新的。您可以收听使用UIWebViewDelegate协议按下的链接,并查看正在按下的链接,然后重新创建Web视图。

+0

嗨菲斯克,我试过类似的东西,但是我遇到了问题,在我做完之后我失去了对WebView的控制权。 我做的是释放WebView,然后用webView = [UIWebView alloc] init];重新创建它。 这有道理吗? 谢谢! – KevinM 2012-03-03 14:02:28

+0

你不能仅仅创建一个新的'UIWebView'。您必须首先从其超级视图中移除旧的“UIWebView”,并将新的“UIWebView”添加为新的子视图。您可以重新使用旧的“UIWebView”的框架,并将其设置为新的“UIWebView”的框架,以确保它位于相同的位置。 – fisk 2012-03-03 14:10:47

+0

噢。不敢相信我看过这个。这应该适合我。我会试一试。谢谢! – KevinM 2012-03-03 14:15:21

相关问题