2010-11-18 8 views
0

Ich mache jetzt eine Anwendung, bei der auf einer Seite i Navigationsleiste mit Zurück-Taste und einer UIWebView habe. Beim Klicken auf eine Schaltfläche sollte diese Seite geladen werden. Mein Problem ist, dass wenn diese Seite geladen wird, sie die ganze Seite mit der URL abdeckt und nicht auf diese bestimmte uiwebview beschränkt ist. und deshalb kann ich nicht zu einer anderen Seite navigieren.Wie öffne ich einen Link in uiwebview in einem Teil der Seite?

habe ich den folgenden Code für die gleiche:

- (void)viewWillAppear:(BOOL)animated 
{ 
    NSString *url = [NSString stringWithFormat:@"http://www.facebook.com/"]; 

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]]; 
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:url]]; 
[webview loadRequest:request]; 

[super viewWillAppear:animated]; 
} 

mir jemand beantworten kann, wie dieses Problem ressolve?

Vielen Dank im Voraus.

Antwort

3

Wenn Sie: [[UIApplication sharedApplication] openURL... es Safari ruft die URL zu öffnen, nachdem es die App geschlossen wird.

So einen WebViewController erstellen und in den viewDidLoad fügen Sie folgend:

NSString *urlAddress; 
if(siteType == @"facebook"){ 
    self.title = @"Facebook"; 
    urlAddress = @"http://www.facebook.com"; 
} 

//Create a URL object. 
NSURL *url = [NSURL URLWithString:urlAddress]; 

//URL Requst Object 
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url]; 

//Load the request in the UIWebView. 
[webView loadRequest:requestObj]; 

und in der Schaltfläche des Root-Controller dies auf die Aktion hinzufügen:

WebViewController *wvc = [WebViewController alloc]; 
wvc.siteType = @"facebook"; 
[self.navigationController pushViewController:wvc animated:YES]; 

Und natürlich für WebViewController Header, Sie benötigen:

@interface WebViewController : UIViewController <UIWebViewDelegate> 
{ 
    NSString *siteType; 
    IBOutlet UIWebView *webView; 
} 
@property (nonatomic, retain) NSString *siteType; 
@property (nonatomic, retain) UIWebView *webView; 
@end 

und nicht zu 01 vergessen

+0

Vielen Dank WrightsCS für Ihre große Hilfe .. – Sarah

Verwandte Themen