I have had to change a UIScrollView
into a UIWebView
due to formatting reasons.
There is a problem though that I need to be able to get the
The best way I found to sort the problem was:
UIWebView
UIScrollView
Using the "- (void)webViewDidFinishLoad:(UIWebView *)webView {" delegate method I detect the size of the UIWebView
Set the frame of the UIWebView
to the content size.
UIWebView
UIScrollView
to the content size.Then used the functionality of the UIScrollView
instead of the UIWebView
.
Thanks -JM
Use JavaScript.
I think that the next line should do the magic:
[webView stringByEvaluatingJavaScriptFromString:@"window.scroll(0,0)"];
This problem can be solved quite easily:
[[webView scrollView] setContentInset:UIEdgeInsetsMake(64, 0, 44, 0)];
Remember that UIEdgeInset is different from CGRect!
A guide on UIEdgeInset can be found in the iOS Developer Library.
Once you get the UIScrollView
that is inside the UIWebView
, it will be easy to change ContentOffset and contentSize
. Information here on how to get the scrollView : ScrollOffset in UIWebView?
Now you can ask for the contentSize
property of the scrollView
property of a UIWebView
.
This enables you to also change the content size of that web view, using CGSizeMake (width, height)
.