0

UIPopoverController で UINavigationController を提示します。UINavigationController には、幅が同じで高さが異なる 2 つの UIViewControllers があります。両方の UIViewControllers が適切なサイズの UIPopoverController で表示されるようにするには、両方の UIViewControllers で次のスニペットを使用します。

- (void)viewDidAppear:(BOOL)animated
{
   [self.popoverControllerContainer setPopoverContentSize:self.contentSizeForViewInPopover animated:YES];
}

2番目のUIViewControllerをプッシュすると正常に動作し、最初のUIViewControllerにポップバックすると正常に動作しますが、最初のUIViewControllerを初めて提示すると、UIViewControllerの高さが小さくなり、レイアウトが壊れます.

なぜこれが起こっているのですか?

よろしくお願いいたします。

ゾリ

4

1 に答える 1

0

-[viewDidLoad] で self.contentSizeForViewInPopover を設定し、-[viewWillAppear:] で popoverController.popoverContentSize を設定してみてください。もちろん、これには popoverController へのポインターを保存する必要があります。

于 2013-09-02T16:58:36.583 に答える