在 Safari 中,当您
- 访问一个很长的页面,例如w3c.org,向下滚动到页面中的某处
- 杀死 Safari
- 再次打开 Safari,它会自动记住您在页面中的最后位置
如何在 UIWebView
中执行此操作?或者有可能吗?
谢谢。
最佳答案
我能想到的实现此目的的最简单方法是保存 Web View contentOffset.y
,然后在下次加载时将其设置回您保存的内容。
将其保存到 NSUserDefaults
中将允许恢复该值,即使应用程序被终止,或者即使安装了更新也是如此。
[[NSUserDefaults standardUserDefaults] setFloat:myWebView.scrollView.contentOffset.y forKey:@"offsetKey"];
[[NSUserDefaults standardUserDefaults] synchronize];
然后恢复:
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
[myWebView.scrollView setContentOffset:CGPointMake(0, [[NSUserDefaults standardUserDefaults] floatForKey:@"offsetKey"]) animated:YES];
}
^^未经测试,让我知道它是如何为你工作的。
关于iphone - 如何记住 UIWebView 的滚动位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12129181/