i want to store the current scroll position of a webView and when i launch the application again . i want to restore that scroll position again ..
How to do that ???
Since iOS5 UIWebView has scrollView
property. You can use variable of type CGPoint
defined like this:
CGPoint _scrollPosition;
Then initialize it:
_scrollPosition = CGPointMake(0, 0);
Whereever you need to store the current position use:
_scrollPosition = _webView.scrollView.contentOffset;
Implement UIWebViewDelegate
protocol and add code to restore the position inside -(void)webViewDidFinishLoad:(UIWebView *)webView
:
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
// .... your other code here ...
if (0 < _scrollPosition.y) {
_webView.scrollView.contentOffset = _scrollPosition;
_scrollPosition = CGPointMake(0, 0);
}
}
UIWebView is not a subclass of UIScrollView so you can't do it the "normal" way.
Looks like this javascript solution will do what you need: http://shortdivision.wordpress.com/2008/10/14/going-back-to-the-last-place-you-were-in-a-uiwebview/