Scroll a UIWebView Scroll a UIWebView

I struggled with this one for quite a while.� I kept searching and searching, all I could find�was forums and no one seemed to have an answer!

Well, if you're here, don't worry, I have the answer you have been looking.� Let me show you how to make a UIWebView scrollable for your iPhone application.


The example below, is placed in your viewDidLoad function.� In the case below, I have created the objects without the use of the Interface Builder.

The first thing we need to do is create a CGRect the size of our view:

CGRect bounds = [ [ UIScreen mainScreen ] applicationFrame ];

The next thing to do is to create our UIScrollView:

UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:bounds];

We've initialized our scrollview the size of our entire view.� Now, we need to create our webview:

UIWebView *webView = [ [ UIWebView alloc ] initWithFrame:[scrollView bounds]];

Our webView has now been initialized with the bounds of our scrollView.� The next thing we do is load our content from our webpage:

NSURLRequest *request = [ NSURLRequest requestWithURL:url ];

�[ webView loadRequest: request ];

The following code assumes we've created an NSUrl called url with the website we want to load.� Once we've loaded our webpage, we need to tell our scrollview the size of our content.� In this case, we set it to the size of our webview that we've loaded:

scrollView.contentSize = [webView bounds].size;

Next, we need to add our webview to our scrollview:

[scrollView addSubview:webView];

Finally, we need to set our view as the scrollview:

self.view = scrollView;

That's it, now your webview is scrollable!

Published on Apr 4, 2009

Tags: iPhone | UIWebView

Related Posts

Did you enjoy this article? If you did here are some more articles that I thought you will enjoy as they are very similar to the article that you just finished reading.

Tutorials

Learn how to code in HTML, CSS, JavaScript, Python, Ruby, PHP, Java, C#, SQL, and more.

No matter the programming language you're looking to learn, I've hopefully compiled an incredible set of tutorials for you to learn; whether you are beginner or an expert, there is something for everyone to learn. Each topic I go in-depth and provide many examples throughout. I can't wait for you to dig in and improve your skillset with any of the tutorials below.