0

3 つのボタンを含むサブ ビューをロードするルート ビュー コントローラーがあります。それらの1つに触れると、ポップオーバーが表示されます。ポップオーバーには、画像ビューと [完了] ボタンのあるバーが含まれています。完了ボタンがタッチされたときに、このポップオーバーを閉じたいです。これを達成するために、私はこのコードを使用しています

- (IBAction)btnDone:(UIBarButtonItem *)sender {
    [self.view removeFromSuperview];

        [APPDELEGATE.parkDetail. popoverController dismissPopoverAnimated:YES];
   // [APPDELEGATE.parkDetail.popoverController dismissPopoverAnimated:YES ];


}

ポップオーバーは次のように表示されます

- (IBAction)btnParkMap:(id)sender {
       [popoverController dismissPopoverAnimated:YES];
    if ([popoverController isPopoverVisible]) {
        [popoverController dismissPopoverAnimated:YES];
    } else {
        parkMap * v = [[parkMap alloc]initWithNibName:@"parkMap" bundle:nil];
        v.contentSizeForViewInPopover = CGSizeMake(350, 300);
        popoverController = [[UIPopoverController alloc] initWithContentViewController:v];
               CGRect popRect = CGRectMake(self.btnShowPopover.frame.origin.x+330,
                                    self.btnShowPopover.frame.origin.y+170,
                                    self.btnShowPopover.frame.size.width,
                                    self.btnShowPopover.frame.size.height);


        [popoverController presentPopoverFromRect:popRect inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];
          }
}
4

5 に答える 5

3

このコードを試してください

[self dismissViewControllerAnimated:YES completion:nil];

または @nirav の ans を試してください

于 2012-11-28T11:18:04.493 に答える
1

以下のコードを書いてみてください

[yourPopOverobject dismissPopoverAnimated:YES];

それが機能しているかどうかを教えてください..

ハッピーコーディング!!!!!

于 2012-11-28T11:15:15.720 に答える
1

PopUpOver は、UIWebView のデフォルトのコンテキスト メニューをオフにすることができます。Web ページの body 要素の CSS プロパティ「-webkit-touch-callout」を「none」に設定するだけなので、これは簡単です。これは、UIWebView デリゲート メソッド「webViewDidFinishLoad:」で JavaScript を使用して行うことができます…</p>

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
[webView stringByEvaluatingJavaScriptFromString:@"document.body.style.webkitTouchCallout='none';"];
}
于 2012-11-28T11:34:59.783 に答える
0
    - (IBAction)btnDone:(UIBarButtonItem *)sender {

      [self dismissViewControllerAnimated:YES completion:nil];


    }
于 2012-11-28T11:20:03.297 に答える
0

以下のコードを確認してみてください...

if ([popoverobject isPopoverVisible]) {
   [popoverobject dismissPopoverAnimated:YES];
   [popoverobject release];
}

}

#pragma mark -
#pragma mark UIPopoverController delegate

-(void)popoverControllerDidDismissPopover:(UIPopoverController *)popoverController {
 //if (popoverController == popoverobject) {
    [popoverobject release];
 //  }
}

- (BOOL)popoverControllerShouldDismissPopover:(UIPopoverController *)popoverController {

   NSLog(@\"popover about to be dismissed\");
   return YES;
  }

それが機能しているかどうかを教えてください...

于 2012-11-28T11:30:22.873 に答える