0

私はiPadアプリケーションを使用しています。UIPopOverControllerボタンをクリックしてから表示しようとしています。しかし、次のコードでそれを行うと、ポップオーバーの高さが間違って見えます。

これが私のコードです。

self.contentSizeForViewInPopover = CGSizeMake(320, 500);
SignatureViewController *signatureViewController = [[SignatureViewController alloc]initWithNibName:@"SignatureViewController" bundle:nil];
signatureViewController.delegate = self;
signatureViewController.title = @"Draw Signature";

UINavigationController *navController = [[UINavigationController alloc]initWithRootViewController:signatureViewController];

UIPopoverController *popover = [[UIPopoverController alloc] initWithContentViewController:navController];

UIBarButtonItem *doneButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneButtonPressed:)];
[signatureViewController.navigationItem setRightBarButtonItem:doneButton];

[popover presentPopoverFromRect:signatureImageView.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];
self.popOverController = popover;

私のポップオーバーはこのように見えます。

ここに画像の説明を入力してください

ナビゲーションバーにも表示されます。コードで何が間違っているのですか?どんな助けでもいただければ幸いです。

4

1 に答える 1

1

ここで確認できることがいくつかあります。

  • self.contentSizeForViewInPopover = CGSizeMake(320, 500);本当にあなたの定義の中にあるべきsignatureViewControllerです(例えばviewDidLoad)
  • に変更UIPopoverArrowDirectionDownしてみてくださいUIPopoverArrowDirectionAny。場所と下向きの矢印の要件を考えると、そのポップオーバーを表示するのに十分なスペースがない可能性があります
于 2012-11-24T04:51:04.207 に答える