0
votes

in my program uiwebview is not loading the url address.when i nslogged the request object is not null.however when i nslog the webview.request it returns null.what may be the reason it is not loading

 - (void)viewDidLoad {
        [super viewDidLoad];

        self.web = [[UIWebView alloc] init];
        NSString *urlAddress = @"http://www.google.com";
        NSURL *url = [NSURL URLWithString:urlAddress];
        NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];

        NSLog(@"%@",requestObj);
        [self.web loadRequest:requestObj];
        [web setFrame:CGRectMake(0, 0, 320, 370)];
        NSLog(@"%@   %@",self.web,self.web.request);


    }

the nslog results are

<NSURLRequest http://www.google.com>
 <UIWebView: 0xbb17ff0; frame = (0 0; 320 370); layer = <CALayer: 0xbb12f20>>   (null)

as per suggestions from this site i changed it from IB and made it to code .i made the class confirm to uiwebview delegate..both the webviewdidstart and webview did finish are being called these are the nslog outputs from these methods

webviewdidstart

webView-----><NSMutableURLRequest >
webView-----><NSMutableURLRequest http://www.google.com>

webview did finish

webView-finished----><NSMutableURLRequest http://www.google.com>
webView-finished----><NSMutableURLRequest http://www.google.com>

still nothing is being called and i think both these methods are called twice

2
Is your UIWebview set via IB? If not, first add the webview as a subview to your view. Add the UIWebviewdelegate to your header file and set the webViewDidStartLoad: delegate in your implementation file. Log inside the method to check if your web page is loading or notVaishnavi Naidu
i am setting the webview via IB...sujith1406

2 Answers

6
votes

This is a working code, test this out in your application and let us know the outcome

in .h file, add UIWebViewDelegate

in .m file's viewDidLoad, add this:

UIWebView *webview=[[UIWebView alloc] initWithFrame:CGRectMake(0.0,0.0,320.0,460.0)];
NSURL *url = [NSURL URLWithString:@"http://www.google.com"];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
webview.delegate = self;
[webview loadRequest:requestObj];
[self.view addSubview:webview];

Now check in the delegates if your page is loading or not:

- (void)webViewDidStartLoad:(UIWebView *)webView {     
   NSLog(@"page is loading");       
 }

-(void)webViewDidFinishLoad:(UIWebView *)webView {
       NSLog(@"finished loading");
 }
1
votes

try like this

 CGRect webFrame = CGRectMake(0.0, 0.0, 320.0, 460.0);
UIWebView *webView = [[UIWebView alloc] initWithFrame:webFrame];

NSString *urlAddress = @"http://www.google.com";
NSURL *url = [NSURL URLWithString:urlAddress];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 
 [webView loadRequest:requestObj]; 
[self addSubview:webView]; 
[webView release];