0

私は webview を作成し、同じ ViewController の別のビューにボタンを付けてロードします。webview は Doc dir から pdf ファイルをロードしています。これまでのところ、すべてが正常に機能しています。しかし今、ユーザーには webview を閉じるためのボタンが必要です。どうすればいいですか?

ご回答ありがとうございます。

編集:これで、閉じるボタンを追加できました。以下の更新されたコードを参照してください。

WebViewを作成する私のコードは次のとおりです。

- (IBAction)globeButton:(id)sender {
NSArray *paths = NSSearchPathForDirectoriesInDomains
(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];

NSString *filePathAndDirectory = [documentsDirectory stringByAppendingPathComponent:@"files"];

NSString *fileName = [NSString stringWithFormat:@"%@/PDFfilename.pdf", 
                      filePathAndDirectory];

UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(10, 50, 900, 650)];

NSURL *targetURL = [NSURL fileURLWithPath:fileName];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[webView loadRequest:request];
[self.view addSubview:webView];
UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[button addTarget:self 
           action:@selector(aMethod:)
 forControlEvents:UIControlEventTouchDown];
[button setTitle:@"Close" forState:UIControlStateNormal];
button.frame = CGRectMake(390, 605, 160, 40);
[button addTarget:self action:@selector(close:) forControlEvents:UIControlEventTouchDown];
[webView addSubview:button];}

しかし、次の行はエラーになります: -[SecondViewController aMethod:]: unrecognized selector sent to instance 0x78327c0'

  • (IBAction)close:(id)sender {[self.GlobeWebView removeFromSuperview];}
4

2 に答える 2

1

UIWebViewDelegateプロトコルに従って、ページがロードされるまで待つか、webViewが追加された直後にボタンをwebViewサブビューとして追加することができます。この「閉じる」ボタンアクションでは、Webビューの読み込みをキャンセルした後、スーパービューからボタンとWebビューを削除する必要があります。

于 2012-07-16T14:08:44.227 に答える
0

あなたの方法:パラメータはありますか?そうでない場合は、セレクターの:を消去します。

于 2012-08-02T14:49:19.093 に答える