2013-05-01 35 views
0

我有一個函數,它以全屏模式在WebView中打開PDF文件。如何將導航按鈕添加到WebView?

如何添加「完成」按鈕,可以關閉WebView?

- (IBAction)openPDF:(id)sender { 
    UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0,0,self.view.bounds.size.width,self.view.bounds.size.height)]; 

    webView.contentMode = UIViewContentModeScaleAspectFit; 

    NSString *path = [[NSBundle mainBundle] pathForResource:@"pdf" ofType:@"pdf"]; 
    NSURL *targetURL = [NSURL fileURLWithPath:path]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:targetURL]; 


    CGRect frame = webView.frame; 
    webView.scalesPageToFit = YES; 
    webView.frame = frame; 

    [webView loadRequest:request]; 

    [self.view addSubview:webView]; 
} 
+0

加上的WebView按鈕,讓操作該按鈕。 – Balu 2013-05-01 09:44:13

+0

或者,使用按鈕嘗試[SVWebViewController](https://github.com/samvermette/SVWebViewController)查看帶有按鈕的Web視圖的開箱即用型實現。 – Mar0ux 2013-05-01 09:46:18

回答

0

使UIWebView的web視圖*全球,

@property(nonatomic, strong) UIWebView *webView; 

然後初始化內部說的WebView - (IBAction爲)openPDF:(ID)發送方法;

_webView = [[UIWebView alloc] initWithFrame:CGRectMake(0,0,self.view.bounds.size.width,self.view.bounds.size.height)]; 


添加DONE按鈕將圖,在- (IBAction)doneButtonPressed:(id)sender方法

除去從視圖的網頁視圖;

[_webview removeFromSuperview]; 
_webView = nil; 
-1

我會做的是,創造一個新的子類的UIViewController的,說WebViewController用筆尖。然後我會添加一個UINavigationBar關閉按鈕UIWebView。 現在做這樣的事情:

WebViewController *webViewController = [[WebViewController alloc] init]; 
webViewController.loadURL = [NSURL URLWithString:@"http://www.google.com"]; 
[self presentModalViewController:webViewController animated:YES]; 
[webViewController release]; //If you use ARC, the no need for this line 

在你WebViewController定義:

@property (nonatomic, retain) IBOutlet UIWebView *webView; 
@property (nonatomic, retain) NSURL *loadURL; 

- (IBAction)close:(id)sender; 

實現:

- (void)viewDidLoad { 
    [super viewDidLoad] 

    NSURLRequest *urlRequest = [NSURLRequest requestWithURL:self.loadURL]; 
    [self.webView loadRequest:urlRequest]; 
} 


- (IBAction)close:(id)sender { 
    [self dismissModalViewControllerAnimated:YES]; 
}