title: Save UIwebview contents to photo gallery
body: <p>There's a video tutorial on u tube that shows how to perform this.It consists of a UIwebview and toolbar button to save the contents.Haven't had any luck making this work.Could someone have a look and see they can make it work.Many thanks in advance.</p>
  
  <p><a href="http://www.youtube.com/watch?v=gDPca3JIc_s&amp;feature=player_embedded#" rel="nofollow noreferrer">http://www.youtube.com/watch?v=gDPca3JIc_s&amp;feature=player_embedded#</a></p>
  
  <pre><code>///////////////////////////////////////////////////////////////////
  //
  //  SaveWebViewController.h
  //  SaveWeb
  //
  //  
  //  Copyright __MyCompanyName__ 2010. All rights reserved.
  //
  
  #import &lt;UIKit/UIKit.h&gt;
  
  @interface SaveWebViewController : UIViewController {
   IBOutlet UIWebView *webview;
  } 
  
  @property (nonatomic, retain) IBOutlet UIWebView *webview;
  
  - [IBAction]saveWeb:(id)sender;
  
  
  @end
  
  
  
  ////////////////////////////////////////////////////////////////////////////////
  //
  //  SaveWebViewController.m
  //  SaveWeb
  //
  //  
  //  Copyright __MyCompanyName__ 2010. All rights reserved.
  //
  
  #import "SaveWebViewController.h"
  
  @implementation SaveWebViewController
  
  - (IBAction)saveWeb:(id)sender {
  
   UIGraphicsBeginImageContext(webView.frame.size);
   [self.view.layer renderInContext: UIGraphicsGetCurrentContext()];
   UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
   UIGraphicsEndImageContext();
   UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil); 
  }
  
  
  
  // The designated initializer. Override to perform setup that is required before the view is loaded.
  - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
      if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
          // Custom initialization
      }
      return self;
  }
  
  
  
  // Implement loadView to create a view hierarchy programmatically, without using a nib.
  - (void)loadView {
  }
  
  
  
  //Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
  - (void)viewDidLoad {
   [super viewDidLoad];
  
   [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://google.com"]]];
  }
  
  
  
  // Override to allow orientations other than the default portrait orientation.
  - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
      // Return YES for supported orientations
      return (interfaceOrientation == UIInterfaceOrientationPortrait);
  }
  
  
  - (void)didReceiveMemoryWarning {
   // Releases the view if it doesn't have a superview.
      [super didReceiveMemoryWarning];
  
   // Release any cached data, images, etc that aren't in use.
  }
  
  - (void)viewDidUnload {
   // Release any retained subviews of the main view.
   // e.g. self.myOutlet = nil;
  }
  
  
  - (void)dealloc {
      [super dealloc];
  }
  
  @end
  </code></pre>