【问题标题】:UIWebview go back is reloading page from start in lesser version then iOS 7UIWebview go back 是从 iOS 7 的较小版本开始重新加载页面
【发布时间】:2014-05-29 12:18:09
【问题描述】:

我正在使用UIWebview 并通过调用以下代码。我正在重定向到上一页。但是在 iOS 6 中,webview 的滚动设置为顶部,而在 iOS 7 中,它位于之前的确切位置。

[[NSURLCache sharedURLCache] removeCachedResponseForRequest:_webView.request];
[[NSURLCache sharedURLCache] removeAllCachedResponses];
[_webView goBack];

所以在 iOS 7 中它运行良好,但在较低版本中会出现问题。

这可能是我的缓存清除在 iOS 6 中不起作用的情况。

【问题讨论】:

    标签: objective-c caching ios7 uiwebview


    【解决方案1】:

    如果我正确理解了您的问题,您想确保您的 Web 视图滚动的内容偏移量设置为零?如果是这样,你可以使用这个sn-p来这样做

    UIScrollView *scrollView = [webView.subviews firstObject];
    if ([scrollView isKindOfClass:[UIScrollView class]]) {
        scrollView.contentOffset = CGPointZero;
    }
    

    更新以保留滚动位置,在属性中跟踪它,例如self.preservedContentOffset = ... 并在您认为网页加载完成时恢复它(webViewDidFinishLoading: 是最简单的解决方案)

    【讨论】:

    • nope.. 默认情况下它滚动到零。这是我不想要的,它在 iOS 7 中运行良好 - 我在 6.0 及以下版本中遇到了这个问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-08
    • 2013-02-26
    • 2012-05-24
    相关资源
    最近更新 更多